aboutsummaryrefslogtreecommitdiffstats
path: root/packet-radius.c
AgeCommit message (Collapse)AuthorFilesLines
2002-08-28Removed trailing whitespaces from .h and .c files using theJörg Mayer1-36/+36
winapi_cleanup tool written by Patrik Stridvall for the wine project. svn path=/trunk/; revision=6117
2002-08-26From Flavio Poletti: handle 3GPP QoS in RADIUS messages.Guy Harris1-24/+97
svn path=/trunk/; revision=6091
2002-08-02Replace the types from sys/types.h and netinet/in.h by their glib.hJörg Mayer1-10/+2
equivalents for the toplevel directory. The removal of winsock2.h will hopefully not cause any problems under MSVC++, as those files using struct timeval still include wtap.h, which still includes winsock2.h. svn path=/trunk/; revision=5932
2002-07-17From Kan Sasaki:Guy Harris1-64/+210
1. Add some VSAs. 2. Modify the routines match_numval() and rd_match_strval_attrib() to use a null string pointer, rather than a 0 value, to signify the end of the attribute table, because some vendors are using an attribute with a value of 0. 3. Bug fix. svn path=/trunk/; revision=5890
2002-07-10From Thierry Pelle: Redback vendor-specific items for RADIUS and L2TP.Guy Harris1-1/+4
svn path=/trunk/; revision=5856
2002-06-04Get rid of the "data_src" member of the "frame_data" structure; put itGuy Harris1-2/+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". svn path=/trunk/; revision=5614
2002-05-24Bug fix from Kan Sasaki.Guy Harris1-2/+5
svn path=/trunk/; revision=5539
2002-05-14Update from Kan Sasaki.Guy Harris1-14/+4
svn path=/trunk/; revision=5465
2002-05-14From Kan Sasaki: added some VSAs from the FreeRadius dictionary filesGuy Harris1-237/+1319
and other changes to RADIUS. Export the Q.931 cause location and code values, and use them in the RADIUS dissector for ACC cause codes and values. Make "CHAP" all caps, as it should be, and use InterCaps in AppleTalk (Apple does). The CHAP Challenge is an octet string, not a text string - the FreeRadius dictionary has an error there. In "rdconvertinttostr()", if there's no value_string table, just print the value numerically, don't call "rd_match_strval()". Don't pass a null value_string pointer to "rd_match_strval_attrib()" - just report the value, without attempting to find a string for it. svn path=/trunk/; revision=5460
2002-05-13From Kan Sasaki:Guy Harris1-1835/+955
1. merge '#define XXX', XXX_printinfo and XXX_attrib_type_vals into XXX_attrib to make it easy to add new attributes. 2. put decoded VSAs as sub item. Update comments to reflect those changes. svn path=/trunk/; revision=5455
2002-05-08From Kan Sasaki: VSA decoding and other changes to RADIUS.Guy Harris1-295/+1382
svn path=/trunk/; revision=5416
2002-05-06Note in comments that we should perhaps get all the information forGuy Harris1-1/+34
RADIUS attributes from files like the FreeRadius dictionary files, rather than compiling them into the RADIUS dissector. svn path=/trunk/; revision=5403
2002-05-06Fix a typo in a comment.Guy Harris1-10/+32
When displaying text strings, show escapes in octal (as is done C) rather than decimal. Display RADIUS_BINSTRING values as strings of hex digits rather than as text strings. Make some items that apparently *are* text strings RADIUS_STRING rather than RADIUS_BINSTRING. The return value of "rdconvertbufftostr()" is never used; get rid of it. svn path=/trunk/; revision=5402
2002-04-14From Joerg Mayer:Guy Harris1-5/+7
Declares some variables static. Creates a new include file packet-rsvp.h, and make use of it (change some extern decls to #inlcude). Move the file packet-pgm.h into packet-pgm.c as it is not used by anything outside packet-pgm.c. svn path=/trunk/; revision=5162
2002-04-08More static-ization.Gilbert Ramirez1-2/+2
svn path=/trunk/; revision=5131
2002-03-27Cisco updates from Adam Sulmicki.Guy Harris1-54/+79
svn path=/trunk/; revision=5029
2002-03-27From Adam Sulmicki: enhanced Cisco support, Microsoft vendor ID, andGuy Harris1-4/+171
fixing a typo in a #define. svn path=/trunk/; revision=5024
2002-03-22Attach to all frames containing LEAP messages an indication of the stateGuy Harris1-39/+41
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. svn path=/trunk/; revision=5004
2002-03-22Additional vendor (Issani) for Radius, and Issani VSA support forGuy Harris1-1/+80
Radius, from Jim Sienicki. Put Jakob Schlyter into the contributors list in the Ethereal man page. svn path=/trunk/; revision=5001
2002-02-26Allow dissectors to be registered as "old-style" or "new-style"Guy Harris1-56/+162
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. svn path=/trunk/; revision=4811
2002-02-26Just put a full EAP tree under the EAP-message TLV; we will eventuallyGuy Harris1-18/+24
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. svn path=/trunk/; revision=4809
2002-02-25Add an EAP dissector that doesn't create a top-level tree and doesn'tGuy Harris1-20/+24
set the columns, for use with EAP payloads inside RADIUS packets. From Adam Sulmicki: dissect SSL-encoded stuff inside EAP. svn path=/trunk/; revision=4806
2002-02-25Mark the columns non-writable before calling the EAP dissector, so theGuy Harris1-1/+14
frame is still marked as a RADIUS packet. svn path=/trunk/; revision=4805
2002-02-25Small fix from Adam Sulmicki to an off-by-2 problem.Guy Harris1-2/+2
svn path=/trunk/; revision=4804
2002-02-25Typo fix, from Adam Sulmicki.Guy Harris1-2/+2
svn path=/trunk/; revision=4801
2002-02-22From Adam Sulmicki: dissect EAP messages inside RADIUS.Guy Harris1-8/+24
svn path=/trunk/; revision=4786
2002-02-22From Adam Sulmicki: additional AVPs for RADIUS. and makingGuy Harris1-2/+31
RD_TP_CONNECT_INFO a RADIUS_STRING rather than a RADIUS_STRING_TAGGED. svn path=/trunk/; revision=4780
2002-01-21Include files from the "epan" directory and subdirectories thereof withGuy Harris1-3/+3
"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/"). svn path=/trunk/; revision=4586
2001-12-10Move the pointer to the "column_info" structure in the "frame_data"Guy Harris1-7/+7
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. svn path=/trunk/; revision=4370
2001-12-03Make "dissector_add()", "dissector_delete()", and "dissector_change()"Guy Harris1-9/+8
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. svn path=/trunk/; revision=4308
2001-11-14Make the RADIUS dissector handle bogus AVPs (AVPs with a length lessGuy Harris1-5/+12
than the size of the AVP header) a bit better. svn path=/trunk/; revision=4203
2001-10-23Additional items for RADIUS tunnels, from Pavel Novotny.Guy Harris1-1/+37
svn path=/trunk/; revision=4064
2001-10-01Damn the torpedos[1], commit it anyway.Richard Sharpe1-14/+86
Who said that? I think I know ... F... svn path=/trunk/; revision=3987
2001-09-30Commit Montori Shindo's small patch.Richard Sharpe1-1/+2
svn path=/trunk/; revision=3978
2001-09-28Additional Ascend codes, and IETF codes, for Radius, from Graeme Hewson.Guy Harris1-1/+26
svn path=/trunk/; revision=3967
2001-08-21Additional AVPs, and Event-Timestamp support, in RADIUS, from TerjeGuy Harris1-1/+66
Krogdahl. svn path=/trunk/; revision=3863
2001-06-18Don't list the attribute-value pairs if the length field of the packetGuy Harris1-9/+11
says there aren't any (i.e., if the length field minus the size of the stuff before the AVP's is less than or equal to 0). svn path=/trunk/; revision=3568
2001-06-18From Joerg Mayer: explicitly fill in all members of aGuy Harris1-4/+4
"header_field_info" structure, including the ones that are later set by the routines to register fields. svn path=/trunk/; revision=3561
2001-06-14An Acct-Status-Type value of 3 is Interim-Update; thanks and a tip ofGuy Harris1-1/+2
the hat to Diana Eichert for pointing out that 3 was missing. svn path=/trunk/; revision=3543
2001-06-05Juniper Networks vendor ID in RADIUS dissector, from Hannes Gredler.Guy Harris1-1/+2
svn path=/trunk/; revision=3516
2001-03-13Make tvb_get_ptr() return 'const guint8*', and clean up all theGilbert Ramirez1-3/+3
usages of tvb_get_ptr(). packet-ieee80211.c still has one bad usage, in which it *does* modify the tvbuff's data. svn path=/trunk/; revision=3128
2001-02-20In the DIAMETER dissector, clear the Info column before fetchingGuy Harris1-80/+75
anything from the packet, so that if we throw an exception before setting the Info column, it doesn't have stuff left over from the previous dissector. Tvbuffify the RADIUS dissector. svn path=/trunk/; revision=3055
2001-02-19New tvbuffified DIAMETER dissector, from David Frascone.Guy Harris1-8/+1
It doesn't do DIAMETER-over-UDP, so the RADIUS dissector no longer checks for DIAMETER packets and calls the DIAMETER dissector if it finds one. svn path=/trunk/; revision=3049
2001-02-05Fix up some MSVC complaints about (narrowing) type conversions byGuy Harris1-2/+2
widening formal arguments or narrowing variables passed as actual arguments. svn path=/trunk/; revision=2993
2001-01-22Remove more "CHECK_DISPLAY_AS_DATA()" calls and "pinfo->current_proto ="Guy Harris1-3/+1
statements. Move the setting of the Protocol column in various dissectors before anything is fetched from the packet, and also clear the Info column at that point in those and some other dissectors, so that if an exception is thrown, the columns don't reflect the previous protocol. svn path=/trunk/; revision=2932
2001-01-16Do not use "match_strval()" unless you're prepared to check whether itGuy Harris1-3/+3
returns NULL and do something appropriate if it does so; instead, use "val_to_str()", and let *it* worry about the value passed to it not having a corresponding string. svn path=/trunk/; revision=2908
2001-01-09Add an additional "protocol index" argument to "{old_}dissector_add()",Guy Harris1-5/+9
"{old_}heur_dissector_add()", "{old_}conv_dissector_add()", and "register_dissector()", so that an entry in those tables has associated with it the protocol index of the protocol the dissector handles (or -1, if there is no protocol index for it). This is for future use in a number of places. (Arguably, "proto_register_protocol()" should take a dissector pointer as an argument, but 1) it'd have to handle both regular and heuristic dissectors; 2) making it take either a "dissector_t" or a union of that and a "heur_dissector_t" introduces some painful header-file interdependencies so I'm punting on that for now. As with other Ethereal internal APIs, these APIs are subject to change in the future, at least until Ethereal 1.0 comes out....) svn path=/trunk/; revision=2849
2001-01-03Have "proto_register_protocol()" build a list of data structures forGuy Harris1-2/+3
protocols, in addition to adding structures to the list of filterable fields. Give it an extra argument that specifies a "short name" for the protocol, for use in such places as pinfo->current_proto; the dialog box for constructing filters; the preferences tab for the protocol; and so on (although we're not yet using it in all those places). Make the preference name that appears in the preferences file and the command line for the DIAMETER protocol "diameter", not "Diameter"; the convention is that the name in question be all-lower-case. Make some routines and variables that aren't exported static. Update a comment in the ICP dissector to make it clear that the dissector won't see fragments other than the first fragment of a fragmented datagram. svn path=/trunk/; revision=2810
2000-11-28The SMI Network Management Private Enterprise Code for Ascend is 529,Guy Harris1-2/+10
not 123 (123 is Newbridge Networks); update the list of RADIUS vendor IDs, and put in a comment before that list indicating that RADIUS vendor IDs are just SMI Network Management Private Enterprise Codes and giving the URL of the IANA list of enterprise codes. svn path=/trunk/; revision=2703
2000-11-19For each column, have both a buffer into which strings for that columnGuy Harris1-2/+2
can be put, and a pointer to the string for the column, which might or might not point to that buffer. Add a routine "col_set_str()", which sets the string for the column to the string passed to it as an argument; it should only be handed a static string (a string constant would be ideal). It doesn't do any copying, so it's faster than "col_add_str()". Make the routines that append to columns check whether the pointer to the string for the column points to the buffer for the column and, if not, copy the string for the column to the buffer for the column so that you can append to it (so you can use "col_set_str()" and then use "col_append_str()" or "col_append_fstr()"). Convert a bunch of "col_add_str()" calls that take a string constant as an argument to "col_set_str()" calls. Convert some "col_add_fstr()" calls that take a string constant as the only argument - i.e., the format string doesn't have any "%" slots into which to put strings for subsequent arguments to "col_set_str()" calls (those calls are just like "col_add_str()" calls). Replace an END_OF_FRAME reference in a tvbuffified dissector with a "tvb_length(tvb)" call. svn path=/trunk/; revision=2670