Ethereal-cvs: [Ethereal-cvs] cvs commit: ethereal packet-ntlmssp.c

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Guy Harris <guy@xxxxxxxxxxxxxxxxxxx>
Date: Thu, 7 Nov 2002 02:01:21 -0600 (CST)
guy         2002/11/07 02:01:20 CST

  Modified files:
    .                    packet-ntlmssp.c 
  Log:
  NTLMSSP_NEGOTIATE messages sometimes appear to have two other blobs at
  the end, although they're empty in all messages I've seen; put in a
  comment noting that.
  
  NTLMSSP_CHALLENGE messages sometimes don't appear to have the address
  list; it doesn't seem to be indicated by:
  
  	any flags in the previous NEGOTIATE message other than the
  	Negotiation Workstation Supplied, Negotiate Domain Supplied, or
  	Negotiate UNICODE, but it doesn't make sense for those to affect
  	it, as they affect unrelated things;
  
  	any flags in the CHALLENGE message other than Negotiate OEM or
  	Negotiate UNICODE, but those don't make sense.
  
  So we just check whether the address list descriptor would be in the
  middle of the domain name string and, if so, assume it's absent.
  
  NTLMSSP_AUTH messages sometimes lack both the session key and the
  negotiate flags; that appears to be controlled by th Negotiate Key
  Exchange flag in the initial NEGOTIATE message - if not set, those
  fields are missing.  We therefore remember the NEGOTIATE flags in a
  conversation, and attach them to frames containing AUTH messages; we
  also need those flags to determine whether the strings in the AUTH
  message are Unicode or not.
  
  Make lengths, maximum lengths, and offsets unsigned.
  
  Display entries for empty blobs and address lists.
  
  Revision  Changes    Path
  1.27      +139 -40   ethereal/packet-ntlmssp.c