aboutsummaryrefslogtreecommitdiffstats
path: root/packet-radius.c
AgeCommit message (Collapse)AuthorFilesLines
2004-03-20If we can't decrypt the user password, display it as hex data, not asGuy Harris1-40/+39
text. Make "rdconvertbufftostr()" use "isprint()" to determine whether to display a character as itself or as an escape. Move our redefinition of "isprint()" above "rdconvertbufftostr()" so that we make the "is it printable?" decision appropriately. svn path=/trunk/; revision=10423
2004-03-20Make a separate display type for the user password, rather than havingGuy Harris1-8/+8
the code to handle RADIUS_STRING know that User Password has an AVP type value of 2. As only the User Password field has that display type, we don't have to check whether we're handling vendor-specific VSAs. svn path=/trunk/; revision=10422
2004-03-09Lars Roland: Another ugly bzero() call fixedJörg Mayer1-2/+2
svn path=/trunk/; revision=10351
2004-03-07Get rid of a variable I'd forgotten to back out before I checked theGuy Harris1-2/+1
code in. svn path=/trunk/; revision=10339
2004-03-06Note that for THE3GPP_IPV6_DNS_SERVERS we probably *do* need to handleGuy Harris1-4/+5
multiple IPv6 addresses. svn path=/trunk/; revision=10338
2004-03-06From Fritz Budiyanto: add various IPv6 attributes as per RFC 3162, andGuy Harris1-2/+34
also handle the THE3GPP_IPV6_DNS_SERVERS attribute. svn path=/trunk/; revision=10337
2004-02-28Update URLs for various IANA documents.Guy Harris1-2/+2
svn path=/trunk/; revision=10262
2004-02-05We can't test the GTK+ version in dissectors or libethereal code, asGuy Harris1-2/+6
they don't include any GTK+ headers (and shouldn't do so, as they can't use GTK+); we use the GLib version as a proxy. svn path=/trunk/; revision=9982
2004-02-01Undo previous checkin, it only contained acidentally escaped unfinished codeJörg Mayer1-5/+1
svn path=/trunk/; revision=9939
2004-02-01packet-dcerpc-afs4int.cJörg Mayer1-1/+5
svn path=/trunk/; revision=9938
2004-01-13From Joost Yervante Damad:Guy Harris1-2/+16
add 3 new vendors; add 3 non-encapsulated Merit vendor-specific attributes; display the authenticator in the protocol tree. svn path=/trunk/; revision=9651
2003-12-24Do the "isprint()" hack for GTK+ 2.x or 1.3[.x], whether on UNIX orGuy Harris1-25/+14
Windows - the problem is that GTK+ 1.3[.x] and later assume strings handed to them are UTF-8 strings, not, for example, ISO 8859/x strings. In packet-radius.c, re-define "isprint()" rather than #ifdeffing its use (the old code was also incorrectly treating 0x7f as a printable). svn path=/trunk/; revision=9435
2003-12-17Pass "attr_info" to "rd_value_to_str()" - don't look it up again inGuy Harris1-22/+21
"rd_value_to_str()". Handle a null return from "find_radius_attr_info()". We don't have to reserve a value type of 0 for "not found in the table" - a null return from "find_radius_attr_info()" indicates that. Hoist the code to make the top-level item for an AVP above the check for an EAP message. svn path=/trunk/; revision=9313
2003-12-17According to RFC 2868, a tag value of 0 is not valid for a string - weGuy Harris1-2/+2
just treat a 0 tag byte as the first byte of the string. svn path=/trunk/; revision=9308
2003-12-17Call the "type" member of a "radius_attr_info" structure "value_type"Guy Harris1-26/+37
(as it's the type of the value for that attribute, e.g. integer, string, binary string, time, ...), and call "val1" "attr_type" (as it's the "type" field value for that attribute in RADIUS packets). Add a type for EAP messages, and check for EAP messages using the value type. For tagged integers, fetch the tag and value separately. Fix the tagged-integer code to overwrite the buffer rather than appending to it. svn path=/trunk/; revision=9307
2003-12-17Put in more information about the attribute type enum.Guy Harris1-51/+36
Get rid of "rd_value_to_str()", pulling its code up into the one place it's called, and rename "rd_value_to_str_2()" to "rd_value_to_str()" (and get rid of its return value - it just returns its first argument). Make "textbuffer" and "vsabuffer" local variables in "dissect_attribute_value_pairs()". Get rid of "rd_match_strval_attrib()" - just fetch the full radius_attr_info entry and use its "str" member. svn path=/trunk/; revision=9306
2003-12-17Instead of having a whole pile of RADIUS value types, each of which hasGuy Harris1-1324/+1051
a value_string table associated with it, just have them all be RADIUS_INTEGER4 or RADIUS_INTEGER4_TAGGED, and add to the table of value tags/value types/value names a pointer to a value_string table - if it's null, just show the value, otherwise use the table. Use that for the 3GPP protocol type field as well, with a value_string table, rather than doing a switch. Constify a bunch of tables. Replace "get_vsa_table()" with "get_attr_info_table()", which returns the attribute information table for the vendor in question, or NULL. Fix the handling of IPX addresses. svn path=/trunk/; revision=9304
2003-12-09Add a new attribute type RADIUS_IP6_ADDRESS for IPv6 addresses.Guy Harris1-3/+72
Put in a note explaining the enum for those types. From Rui Carmo: add all 3GPP VSA's. svn path=/trunk/; revision=9217
2003-11-22- Bugfix: Passworddecoding should only be done for attribute 2, butJörg Mayer1-9/+23
not for VSA 2 - Fixme comment about length handling added - Cleanup: Setting a variable to the right type removes the necessity for casts. svn path=/trunk/; revision=9067
2003-07-15From Michael Kopp: add some entries for Cisco VSA for SSG CommunicationGuy Harris1-1/+6
via Radius Packets. svn path=/trunk/; revision=8023
2003-07-01From Adam Sulmicki: report the message type for accounting statusGuy Harris1-1/+6
messages and accounting messages. svn path=/trunk/; revision=7956
2003-03-11When registering a string preference, if the value of the preference isGuy Harris1-2/+2
NULL, convert it to a copy of a null string, otherwise replace it with a copy of the string, so that we know that the variable for the preference always points to a string that can be freed. That also obviates the need to worry about a null-pointer value for a preference variable when checking to see whether a preference has changed. When checking for a string preference not being set, check for an empty string, not a null pointer - the above code turns null pointers into pointers to empty strings, *and* the GUI code does (and always did!) the same. svn path=/trunk/; revision=7342
2003-02-13Fetch the time stamp into a gint32, as it's known to be 32 bits, and letGuy Harris1-3/+3
the call to "abs_time_secs_to_str()" convert it to a "time_t". svn path=/trunk/; revision=7134
2003-02-13Cast "timeval" to "long", and print it with "%ld", to handle "time_t"Guy Harris1-2/+2
being an "int" or a "long". svn path=/trunk/; revision=7133
2003-02-12Make the argument to "abs_time_secs_to_str()" a "time_t" - it's in ANSIGuy Harris1-3/+4
C, and it's the right thing to pass to "localtime()". svn path=/trunk/; revision=7125
2003-02-11Add a "abs_time_secs_to_str()" routine that takes a UNIX time-since-the-Guy Harris1-6/+2
epoch-in-seconds value and converts it to a string. Use that routine in the RADIUS dissector, rather than using "ctime()" and "tzname[]" - "tzname[]" strings might contain non-ASCII characters, which currently give the GTK+ 1.3[.x] used on Windows, and also, I think, GTK+ 2.x, heartburn, as they expect UTF-8, not, for example, ISO 8859/1. Fix the string length in "abs_time_to_str()". svn path=/trunk/; revision=7124
2003-01-28Do the usual "isprint()" workaround for versions of GTK+ that assumeGuy Harris1-1/+25
UTF-8 strings. svn path=/trunk/; revision=7020
2002-12-17Clean up the code a bit:Guy Harris1-14/+17
don't initialize variables that are set elsewhere before they're used; don't call "tvb_get_ptr()" to set a variable if you're not going to use that variable; make the two character-processing loops have the same structure; put the result of the XORing into an unsigned character, so it can be handed to "isprint()" without running the risk of bogus behavior if the 8th bit is set. svn path=/trunk/; revision=6796
2002-12-17Replace #include "md5.h" with "crypt-md5.h".Olivier Abad1-2/+2
svn path=/trunk/; revision=6795
2002-12-17From James Harris: Decrypt RADIUS user passwords.Gerald Combs1-2/+71
The MD5 is copyrighted by L. Peter Deutsch, and released under the same license as zlib. It is GPL-compatible, and should NOT have the GPL applied to it. svn path=/trunk/; revision=6790
2002-12-02Don't cast away constness, and fix variable and structure memberGuy Harris1-4/+4
qualifiers as necessary to ensure that we don't have to. "strcmp()", "strcasecmp()", and "memcmp()" don't return booleans; don't test their results as if they did. Use "guint8", not "guchar", for a pointer to (one or more) 8-bit bytes. Update Michael Tuexen's e-mail address. svn path=/trunk/; revision=6726
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