aboutsummaryrefslogtreecommitdiffstats
path: root/packet-eap.c
AgeCommit message (Collapse)AuthorFilesLines
2002-06-07Add "show_fragment_seq_tree()", which is like "show_fragment_tree()",guy1-26/+45
but for stuff reassembled with "fragment_add_seq()" or "fragment_add_seq_check()". Add a "fragment tag" string to the "fragment_items", so that packets with fragmentation errors can be properly flagged as having "Illegal fragments" or "Illegal segments" depending on the term used with the protocol in question. Make all the dissectors that can use "show_fragment_tree()" or "show_fragment_seq_tree()", and don't already use them, do so. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5644 f5534014-38df-0310-8fa8-9805f1628bb7
2002-06-04Get rid of the "data_src" member of the "frame_data" structure; put itguy1-3/+2
in the "packet_info" structure instead, as we don't need a pointer for every single frame in the capture file, just for each frame for which we currently have an open "epan_dissect_t". git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5614 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-28Fix a typo.guy1-39/+53
Don't use the EAP ID of the first fragment as the reassembly key; that might not work if EAP IDs are reused. Use the frame number of the frame containing the first fragment, instead. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5036 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-27Cleanups from Adam Sulmicki.guy1-5/+6
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5028 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-27From Adam Sulmicki: EAP-TLS reassembly.guy1-47/+353
(Modified not to use global variables for state, but to keep state in the conversation, to use "fragment_add_seq()", and to make the protocol tree entries for the fragment list refer to the reassembled data and to make the entries for items in that list refer to the part that item contributed to that data.) git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5026 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-23From Adam Sulmicki: state machine changes to update the state better,guy1-57/+131
and changes to the display items for LEAP challenges and responses. Make the LEAP state per-conversation. Get rid of some unneeded includes. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5008 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-22Attach to all frames containing LEAP messages an indication of the stateguy1-70/+138
of the LEAP negotiation, so we can properly dissect the LEAP message after the first pass through the packets. For that to be computed correctly, EAP frames have to be dissected on the first pass through the capture file, even if the protocol tree isn't being generated; that means that RADIUS AVPs need to be dissected even if the protocol tree isn't being generated. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@5004 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-19From Adam Sulmicki: add support for NOTIFY and NAK EAP types, fix theguy1-10/+29
entry for the ID EAP type, and do some miscellaneous cleanups. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4985 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-19The data for EAP_TYPE_ID is just a string; display it withguy1-1/+8
"tvb_format_text()", as per Adam Sulmicki's suggestion. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4984 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-19From Adam Sulmicki: add all known EAP types.guy1-16/+50
Use "tvb_bytes_to_str()", not "tvb_format_text()", for binary data such as challenges and responses. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4983 f5534014-38df-0310-8fa8-9805f1628bb7
2002-03-18Cisco LEAP support, from Adam Sulmicki.guy1-2/+87
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4966 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-26Allow dissectors to be registered as "old-style" or "new-style"guy1-10/+34
dissectors. "Old-style" dissectors return nothing. "New-style" dissectors return one of: a positive integer, giving the number of bytes worth of data in the tvbuff that it considered to be part of the PDU in the tvbuff; zero, if it didn't consider the data in the tvbuff to be a PDU for its protocol; a negative integer, giving the number of additional bytes worth of data in needs to get the complete PDU (for use with fragmentation/segmentation when the length of the PDU isn't known to the protocol atop the one the dissector is dissecting). Have "call_dissector()" return the return value of new-style dissectors, and the length of the tvbuff handed to it for old-style dissectors. Have "dissector_try_port()" return FALSE if the subdissector is a new-style dissector and returned 0. Make the EAP dissector a new-style dissector, and have a "EAP fragment" dissector that is also a new-style dissector and handles fragmentation of EAP messages (as happens above, for example, RADIUS). Also, clean up some signed vs. unsigned comparison problems. Reassemble EAP-Message AVPs in RADIUS. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4811 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-26Just put a full EAP tree under the EAP-message TLV; we will eventuallyguy1-40/+22
use that tree to stick fragment information when we reassemble EAP-message fragments. Fix up some "tvb_new_subset()" calls to set the actual length to the minimum of the data left in the tvbuff and the length of the subset. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4809 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-25Don't give the raw data for SSL-encapsulated stuff in an EAP message itsguy1-4/+2
own protocol tree item; instead, use the SSL protocol tree for that, and put it under the EAP tree. (I infer from mail from Adam Sulmicki that this is a change he had but couldn't generate and submit due to CVS problems.) git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4808 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-25Add an EAP dissector that doesn't create a top-level tree and doesn'tguy1-28/+107
set the columns, for use with EAP payloads inside RADIUS packets. From Adam Sulmicki: dissect SSL-encoded stuff inside EAP. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4806 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-24Don't copy the entire EAP header, just extract stuff from it a field atguy1-25/+27
a time, so we dissect as far as we can. Set the length of the EAP protocol item to the length of an EAP header. Put information into the Info column about the EAP code and, for a request or response, the EAP type. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4798 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-22Get rid of an unnecessary "volatile".guy1-2/+2
Give the type field a value_string array, and use that field when putting the type into the protocol tree. Display the data under the EAPOL tree, as it's part of the EAPOL PDU. Just use "next_tvb" as the tvbuff for the data; don't create a new one that, the different fourth argument to "tvb_new_subset()" nonwithstanding, refers to the same data as "next_tvb". Call the EAP dissector through a handle. Nobody directly calls the EAP dissector any more, they all call it through handles; make it static. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4787 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-22From Adam Sulmicki: dissect EAP messages inside RADIUS.guy1-2/+4
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4786 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-22From Adam Sulmicki <adam[AT]cfar.umd.edu>:guy1-24/+30
Add more type values for EAP. Fix off-by-one bug when displaying Code of EAP message. Get rid of an unnecessary "volatile". Give the code and type fields value_string arrays, and use them when putting the code and type into the protocol tree. Base the decision of whether to put the type field into the tree on the request code, not on the length of the packet. Display the Type-Data field, under that name, under the EAP tree, as it's part of the EAP PDU. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4779 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-17With the tvbuffication of all dissectors, the "packet_info" structure noguy1-2/+2
longer contains length fields, so there's no need to pass a "packet_info *" argument to "set_actual_length()". git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4748 f5534014-38df-0310-8fa8-9805f1628bb7
2002-02-06Use "value_string" tables to map EAP code and type values to strings -guy1-23/+19
and fix up the table for EAP types. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4704 f5534014-38df-0310-8fa8-9805f1628bb7
2002-01-21Include files from the "epan" directory and subdirectories thereof withguy1-2/+2
"epan/..." pathnames, so as to avoid collisions with header files in any of the directories in which we look (e.g., "proto.h", as some other package has its own "proto.h" file which it installs in the top-level include directory). Don't add "-I" flags to search "epan", as that's no longer necessary (and we want includes of "epan" headers to fail if the "epan/" is left out, so that we don't re-introduce includes lacking "epan/"). git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4586 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"guy1-5/+5
structure to the "packet_info" structure; only stuff that's permanently stored with each frame should be in the "frame_data" structure, and the "column_info" structure is not guaranteed to hold the column values for that frame at all times - it was only in the "frame_data" structure so that it could be passed to dissectors, and, as all dissectors are now passed a pointer to a "packet_info" structure, it could just as well be put in the "packet_info" structure. That saves memory, by shrinking the "frame_data" structure (there's one of those per frame), and also lets us clean up the code a bit. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4370 f5534014-38df-0310-8fa8-9805f1628bb7
2001-12-03Make "dissector_add()", "dissector_delete()", and "dissector_change()"guy1-2/+5
take a dissector handle as an argument, rather than a pointer to a dissector function and a protocol ID. Associate dissector handles with dissector table entries. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4308 f5534014-38df-0310-8fa8-9805f1628bb7
2001-11-26Moved from using dissect_data() to using call_dissector()hagbard1-2/+5
git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4269 f5534014-38df-0310-8fa8-9805f1628bb7
2001-11-06IEEE 802.1x, a/k/a EAPOL, and PPP/EAPOL EAP support, from Pekkaguy1-0/+156
Nikander. git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@4170 f5534014-38df-0310-8fa8-9805f1628bb7