Ethereal-cvs: [Ethereal-cvs] cvs commit: ethereal packet-clnp.c packet-icmpv6.c packet-ip.c pa

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

Date Prev · Date Next · Thread Prev · Thread Next
From: Guy Harris <guy@xxxxxxxxxxxxxxxxxxx>
Date: Mon, 1 Oct 2001 03:29:36 -0500 (CDT)
guy         2001/10/01 03:29:36 CDT

  Modified files:
    .                    packet-clnp.c packet-icmpv6.c packet-ip.c 
                         packet-rlogin.c packet-tcp.c packet-tcp.h 
  Log:
  Have a flag in the "packet_info" structure, which indicates whether the
  stuff currently being dissected is part of a packet included in an error
  packet (e.g., an ICMP Unreachable packet).  Have the TCP dissector not
  bother doing reassembly if the TCP segment is part of an error packet,
  rather than an actual TCP transmission; other dissectors might want to
  treat those packets specially as well.
  
  Add to the "tcpinfo" structure a flag indicating whether the URG flag
  was set, rather than having the zero or non-zero value of the urgent
  pointer indicate that.  (Yes, at least as I read RFC 793, a zero urgent
  pointer value isn't useful, as it means "the stuff before this segment
  is urgent", but it's certainly possible to put onto the wire a TCP
  segment with URG set and a zero urgent pointer.)
  
  Don't dissect the TCP header by grabbing the entire header with
  "tvb_memcpy()" and then pulling stuff out of it - extract stuff with
  individual tvbuff calls, and put stuff into the protocol tree and the
  Info column as we extract it, so that we can dissect a partial header.
  This lets us, for example, get the source and destination ports from the
  TCP header of the part of a TCP segment included in a minimum-length
  ICMPv4 error packet.
  
  Revision  Changes    Path
  1.35      +16 -2     ethereal/packet-clnp.c
  1.53      +16 -2     ethereal/packet-icmpv6.c
  1.142     +16 -2     ethereal/packet-ip.c
  1.21      +36 -25    ethereal/packet-rlogin.c
  1.111     +133 -109  ethereal/packet-tcp.c
  1.8       +2 -1      ethereal/packet-tcp.h