Ethereal-cvs: [Ethereal-cvs] cvs commit: ethereal packet-smb-pipe.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: Wed, 21 Mar 2001 18:28:36 -0600 (CST)
guy         2001/03/21 18:28:36 CST

  Modified files:
    .                    packet-smb-pipe.c 
  Log:
  When dissecting LANMAN pipe transaction replies, store with each reply
  frame per-frame data indicating
  
  	1) what type of transaction it's a reply to
  
  and
  
  	2) whether it's the first reply or a continuation reply
  
  as the information supplied by the SMB dissector can only be trusted on
  the first pass through the capture.
  
  (If you have two different transactions in the *same* conversation with
  the *same* MID, but different transaction types, only on the first pass
  will the transaction type in the data structure pointed to by
  "si.request_val" reflect the previous request - it reflects the last
  request seen which, when the user is clicking on frames in the capture,
  needn't be the request corresponding to the reply that they've just
  clicked on.
  
  If you have a reply that consists of multiple SMBs,
  "si.request_val->trans_response_seen" will be set to 1 as soon as the
  first reply is seen, and will *remain* 1 until the request is seen
  again; if the user clicks on one of the SMBs in the reply, even if it's
  the first SMB in the reply, without having first clicked on the request,
  "si.request_val->trans_response_seen" will be 1, and the SMB will be
  misdissected as a continuation.)
  
  Use common code to handle the beginning of LANMAN replies, rather than
  duplicating it in the code to handle each reply.
  
  Revision  Changes    Path
  1.20      +69 -80    ethereal/packet-smb-pipe.c