aboutsummaryrefslogtreecommitdiffstats
path: root/packet-ipv6.h
AgeCommit message (Collapse)AuthorFilesLines
1999-12-06Use WORDS_BIGENDIAN, rather than BYTE_ORDER, to determine which valuesGuy Harris1-5/+4
to use for IPV6_FLOWINFO_MASK and IPV6_FLOWLABEL_MASK. WORDS_BIGENDIAN is defined as long as you include "config.h"; BYTE_ORDER is defined only if you include "global.h" (or if your OS *happens* to define it in an include file that's being included), and we're trimming the number of files that include "global.h". svn path=/trunk/; revision=1230
1999-12-06Remove #include "globals.h" from packet-atalk.c (not needed) and fromGilbert Ramirez1-5/+1
packet-ipv6.h. Of all the files that include packet-ipv6.h, only ipproto.c needs "globals.h", so I put the #include in ipproto.c svn path=/trunk/; revision=1229
1999-11-18Craig Rodrigues' fixes to let it compile on AIX using IBM's compilerGuy Harris1-31/+31
(remove commas following the last member of an enum, make all bit fields "guint32" - GCC lets you get away with that, but at least some other compilers don't). svn path=/trunk/; revision=1052
1999-11-03Don't define IPV6_VERSION; at least on AIX 4.3.2, one user got aGuy Harris1-4/+1
compiler warning because it was also defined by <netinet/in.h>, and we're not using it. Don't define IPV6_VERSION, either. svn path=/trunk/; revision=966
1999-10-22Generalize the "ip_src" and "ip_dst" members of the "packet_info"Guy Harris1-1/+11
structure to "dl_src"/"dl_dst", "net_src"/"net_dst", and "src"/"dst" addresses, where an address is an address type, an address length in bytes, and a pointer to that many bytes. "dl_{src,dst}" are the link-layer source/destination; "net_{src,dst}" are the network-layer source/destination; "{src,dst}" are the source/destination from the highest of those two layers that we have in the packet. Add a port type to "packet_info" as well, specifying whether it's a TCP or UDP port. Don't set the address and port columns in the dissector functions; just set the address and port members of the "packet_info" structure. Set the columns in "fill_in_columns()"; this means that if we're showing COL_{DEF,RES,UNRES}_SRC" or "COL_{DEF,RES,UNRES}_DST", we only generate the string from "src" or "dst", we don't generate a string for the link-layer address and then overwrite it with a string for the network-layer address (generating those strings costs CPU). Add support for "conversations", where a "conversation" is (at present) a source and destination address and a source and destination port. (In the future, we may support "conversations" above the transport layer, e.g. a TFTP conversation, where the first packet goes from the client to the TFTP server port, but the reply comes back from a different port, and all subsequent packets go between the client address/port and the server address/new port, or an NFS conversation, which might include lock manager, status monitor, and mount packets, as well as NFS packets.) Currently, all we support is a call that takes the source and destination address/port pairs, looks them up in a hash table, and: if nothing is found, creates a new entry in the hash table, and assigns it a unique 32-bit conversation ID, and returns that conversation ID; if an entry is found, returns its conversation ID. Use that in the SMB and AFS code to keep track of individual SMB or AFS conversations. We need to match up requests and replies, as, for certain replies, the operation code for the request to which it's a reply doesn't show up in the reply - you have to find the request with a matching transaction ID. Transaction IDs are per-conversation, so the hash table for requests should include a conversation ID and transaction ID as the key. This allows SMB and AFS decoders to handle IPv4 or IPv6 addresses transparently (and should allow the SMB decoder to handle NetBIOS atop other protocols as well, if the source and destination address and port values in the "packet_info" structure are set appropriately). In the "Follow TCP Connection" code, check to make sure that the addresses are IPv4 addressses; ultimately, that code should be changed to use the conversation code instead, which will let it handle IPv6 transparently. svn path=/trunk/; revision=909
1999-10-14use inet_pton() and inet_ntop(), which are RFC2553 standard functionJun-ichiro itojun Hagino1-4/+1
for converting IPv[46] numeric notation to/from binary form. recent BIND includes those functions so fallback is not necessary on most of the platforms. sorry if it raises any portability problem on other platforms. remove partial inclusion of inet_ntop() in packet-ipv6.c. move ip6_to_str() to packet.c, it fits better there than packet-ipv6.c. svn path=/trunk/; revision=829
1999-09-10Give "globals.h" an RCS ID and copyright/GPL notice.Guy Harris1-1/+5
Move some defines that would be used even by a non-GTK+-based Ethereal from "gtk/main.h" to "globals.h". Remove the byte-order #defines from "packet.h", as they're now in "globals.h" (having been moved there from "gtk/main.h"). Fix up some files that use those #defines to include "globals.h". "resolv.c" doesn't use any GTK stuff, so it needn't include <gtk/gtk.h> nor "gtk/main.h" - it only did so to get the byte-order #defines for the benefit of "packet-ipv6.h", and "packet-ipv6.h" now includes them itself. svn path=/trunk/; revision=649
1999-07-23Got rid of ipv6 compiler warnings when compiling on RedHat 6.0.Gilbert Ramirez1-1/+17
Initialized AndXCommand to 0 in packet-smb.c just to get rid of compiler warning about 'possibly used uninitialized'. svn path=/trunk/; revision=382
1999-04-06Capturing packets from ethereal now saves the capture in an "anonymous" ↵Gilbert Ramirez1-0/+25
buffer. That is, it's a random name chosen by tempnam(), unknown to the user. If the user decides to save that trace, he then uses File | Save to save it to a file. File | Save As lets him make a copy of his named trace file as well. I also updated my e-mail address in the various credit locations. svn path=/trunk/; revision=242
1999-03-28Jun-ichiro's IPv6 patch is merged in with ethereal and now uses the newGilbert Ramirez1-8/+478
proto*() functions. The configure script tries to use ipv6 name resolution if it knows the type of ipv6 stack the user has (this can be avoided with the --disable-ipv6 switch) Additionally, the configure script now deals with wiretap better. If the user doesn't want to compile wiretap, the wiretap is never visited. A few unnecessary #includes were removed from some wiretap files, and a CPP macro was moved from bpf.c to wtap.h. svn path=/trunk/; revision=229
1998-09-16Initial revisionGerald Combs1-0/+8
svn path=/trunk/; revision=2