Ethereal-cvs: [Ethereal-cvs] cvs commit: ethereal packet-dcerpc.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: Tue, 18 Jun 2002 01:11:42 -0500 (CDT)
guy         2002/06/18 01:11:42 CDT

  Modified files:
    .                    packet-dcerpc.c 
  Log:
  There's no more need for separate request and response reassembly hash
  tables for connectionless PDUs than for connection-oriented PDUs; just
  have one connectionless PDU reassembly hash table.
  
  Get rid of unnecessary tests of "dcerpc_reassemble" - the code to handle
  requests and responses was
  
  	if (!dcerpc_reassemble || packet not fragmented || frame is short)
  		don't reassemble;
  	else if (dcerpc_reassemble)
  		reassemble
  
  but if we go into the "else" clause we know that all three conditions in
  the "if" are false, including "!dcerpc_reassemble", so we know
  "dcerpc_reassemble" is true.
  
  Set "pinfo->fragmented" based on whether the PDU being dissected is an
  unreassembled first fragment or not.
  
  Put a "Fragment data" item into the protocol tree for all fragments.
  
  Properly maintain the offset when dissecting the header of a
  connectionless PDU, even if we aren't building a protocol tree.
  
  "fd_head->datalen" is bogus for sequence-number-based reassembly; use
  "fd_head->len" instead.
  
  Revision  Changes    Path
  1.59      +150 -143  ethereal/packet-dcerpc.c