aboutsummaryrefslogtreecommitdiffstats
path: root/packet-llc.c
AgeCommit message (Collapse)AuthorFilesLines
1999-11-11"XDLC_CONTROL_LEN()" actually returned the length of the entire xDLCGuy Harris1-12/+14
header, under the assumption that the address field was two octets. It should return the length of the *control* field, and leave it up to its caller to add in the length of the address field. (The address field appears to be one byte in SNA, not two bytes.) svn path=/trunk/; revision=1006
1999-10-12New proto_tree header_field_info stuff. Header_field_infos now containGilbert Ramirez1-7/+12
the base for numbers to be displayed in, bitmasks for bitfields, and blurbs (which are one or two sentences describing the field). proto_tree_add*() routines now automatically handle bitfields. You tell it which header field you are adding, and just pass it the value of the entire field, and the proto_tree routines will do the masking and shifting for you. This means that bitfields are more naturally filtered via dfilter now. Added Phil Techau's support for signed integers in dfilters/proto_tree. Added the beginning of the SNA dissector. It's not complete, but I'm committing it now because it has example after example of how to use bitfields with the new header_field_info struct and proto_tree routines. It was the impetus to change how header_field_info works. svn path=/trunk/; revision=815
1999-10-08Christophe Tronche's BPDU dissector.Guy Harris1-2/+2
svn path=/trunk/; revision=790
1999-09-27Don't bother setting the length of the LLC header when we create the LLCGuy Harris1-2/+2
tree to anything other than 0, as we're going to change it to the right value once the control field has been parsed and we know the right value. svn path=/trunk/; revision=731
1999-09-26Handle the length of the LLC(+SNAP) header correctly for SNAP frames.Guy Harris1-6/+14
svn path=/trunk/; revision=728
1999-09-26Have "get_xdlc_control()" and "dissect_xdlc_control()" return theGuy Harris1-12/+14
xDLC control field, so that its caller can not only determine from it whether the frame has a payload, but can also determine how long the control field is. Put macros in "xdlc.h" to determine both of those. Have "capture_llc()" and "dissect_llc()" use that information appropriately. svn path=/trunk/; revision=727
1999-08-23Have "get_xdlc_control()" and "dissect_xdlc_control()" just return aGuy Harris1-18/+14
Boolean indicating whether the frame has any payload to dissect or not. svn path=/trunk/; revision=556
1999-08-23The only LLC frame types that should be dissected based on their SAP or,Guy Harris1-37/+76
if the SAPs are SNAP, based on their ethertype are I frames and UI frames; others don't have payload to be dissected as belonging to other protocols. svn path=/trunk/; revision=555
1999-08-10Jeff Foster's changes to add support for NetBEUI/NBF (NetBIOS atop 802.2Guy Harris1-2/+2
LLC, the original NetBIOS encapsulation). svn path=/trunk/; revision=466
1999-08-04Add a "dissect_xdlc_control()" routine, to dissect the control field ofGuy Harris1-4/+32
SDLC-derived protocols such as HDLC and derivatives of it such as LAPB, IEEE 802.2 LLC, and so on. Have the LLC and LAPB dissectors use it. Make "dissect_numeric_bitfield()" put the low-order bit of the bitfield in the low-order bit of an integer when printing it, so that the right value is printed. svn path=/trunk/; revision=434
1999-07-29Made the protocol (but not the fields) use the new proto_tree routine,Gilbert Ramirez1-7/+7
allowing users to filter on the existence of these protocols. I also added packet-clip.c to the Nmake makefile. svn path=/trunk/; revision=402
1999-07-15Modified the proto_register_field_array usage again. Thanks to Guy'sGilbert Ramirez1-8/+15
suggestion, this new method using a static array should use less memory and be faster. It also has a nice side-effect of making the source-code more readble, IMHO. Changed the print routines to look for protocol proto_data instead of looking at the text label as they did before, hoping that the data hex dump field item starts with "Data (". Added the -G keyword to ethereal to make it dump a glossary of display filter keywords to stdout and exit. This data is then formatted with the doc/dfilter2pod perl program to pod format, which is combined with doc/ethereal.pod.template to create doc/ethereal.pod, from which the ethereal manpage is created. This way we can keep the manpage up-to-date with a list of fields that can be filtered on. svn path=/trunk/; revision=364
1999-07-07Created a new protocol tree implementation and a new display filterGilbert Ramirez1-78/+116
mechanism that is built into ethereal. Wiretap is now used to read all file formats. Libpcap is used only for capturing. svn path=/trunk/; revision=342
1999-03-23Removed all references to gtk objects from packet*.[ch] files. They nowGilbert Ramirez1-18/+13
reference the protocol tree with struct proto_tree and struct proto_item objects. That way, the packet decoding source code file can be used with non-gtk packet decoders, like a curses-based ethereal, e.g. I also re-arranged some of the information in packet.h to more appropriate places (like other packet-*.[ch] files). svn path=/trunk/; revision=223
1999-03-22Well, that was dumb. I didn't have to add a "capture_data()" routine; IGuy Harris1-2/+2
just had to make "sap_capture_func()" return NULL if it didn't find an entry for the SAP it was passed. svn path=/trunk/; revision=220
1999-03-22Have "sap_capture_func()" return "capture_data" rather thanGuy Harris1-8/+11
"dissect_data"; if you call "dissect_data()" with an argument list of the type expected by a "capture_XXX()" routine, it won't do the right thing (and may do the wrong thing, e.g. crash). Have "sap_capture_func()" (and "sap_dissect_func()") return function pointers rather than "void *"s, so that I don't make a mistake like the above in the future.... svn path=/trunk/; revision=219
1999-02-09When doing a capture, decode enough of the incoming packets to correctlyGuy Harris1-30/+73
update the packet counts and percentages in the dialog box popped up during a capture, even for non-Ethernet captures. svn path=/trunk/; revision=184
1998-11-17* Added column formatting functionality.Gerald Combs1-7/+7
* Added check_col(), add_col_str() and add_col_fmt() to replace references to ft->win_info. * Added column prefs handling code. svn path=/trunk/; revision=97
1998-11-12A lengthy patch to add the wiretap library. Wiretap is not used by defaultGilbert Ramirez1-2/+1
because it is still in its infancy, but it can be compiled in optionally. The library exists in its own subdirectory ethereal/wiretap. This patch also edits all the packet-*.c files to remove the #include <pcap.h> line which is unnecessary in these files. In the ethereal code, file.c is the most heavily modified with #ifdef WITH_WIRETAP lines for the optional library. svn path=/trunk/; revision=82
1998-10-10* OSPF alignment fixes (Gerald)Gerald Combs1-1/+5
* FDDI support (Laurent, Guy) svn path=/trunk/; revision=36
1998-09-27Merged in a _huge_ patch from Guy Harris. It adds a time stap column,Gerald Combs1-9/+9
generalizes the column printing code, adds a "frame" tree item to the tree view, and fixes a bunch of miscellaneous coding bugs. svn path=/trunk/; revision=31
1998-09-23I removed the ncp code from packet-ipx.c and created packet-ncp.c. Now thatGilbert Ramirez1-2/+2
I've started concentrating on the NetWare modules again, packet-ncp.c is going to start to grow. I also added IPX RIP to packet-ipx.c. Additionally, I added the END_OF_FRAME macro to packet.h, which is useful for many dissect() routines. (and I already modified packet-bootp.c and packet-data.c to use this macro) svn path=/trunk/; revision=22
1998-09-17The non-SNAP vines doesn't work with dissect_vines(). We don't know what myGilbert Ramirez1-3/+5
packets are yet... svn path=/trunk/; revision=15
1998-09-17I moved the list of dissect() functions into the table of SAPs. It removesGilbert Ramirez1-42/+53
the ugly case statement at the end of dissect_llc. svn path=/trunk/; revision=14
1998-09-17* Added in Laurent's OSI/ISO CNLP and COTP support.Gerald Combs1-1/+4
* Added Laurent's changes to the man (actually pod) page. * Copied in VERSION file so that others can make doc/Makefile svn path=/trunk/; revision=8
1998-09-16Added ID tags to the beginning of each source file.Gerald Combs1-0/+2
svn path=/trunk/; revision=7
1998-09-16Initial revisionGerald Combs1-0/+163
svn path=/trunk/; revision=2