aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2001-10-31Display unknown extension types in decimal, not hex (the RFCs give themGuy Harris1-2/+2
in decimal, and the "Extension Type" field is BASE_DEC). svn path=/trunk/; revision=4119
2001-10-31Support for Mobile IP's use of ICMP Router Advertisements, from DavidGuy Harris2-11/+270
Frascone. Small white-space fix. Display the preference level in router advertisements as signed, not unsigned, as per RFC 1256, which says it's a "signed, twos-complement value". svn path=/trunk/; revision=4118
2001-10-31Sigh. Well, if you make the function declarations external, that meansGuy Harris7-4/+208
that they're external when the plugin is compiled, and there's no definition to satisfy the extern, so plugins fail to compile. Add a "plugins/plugin_api_defs.h" header file that defines them, and include that in one (and only one) source file for a particular plugin. svn path=/trunk/; revision=4117
2001-10-31Update the code for the DHCP authentication option to match RFC 3118,Guy Harris1-20/+100
and update the URL for the DHCP parameter value assignments; support a code of 90 for DHCP authentication, as that's what RFC 3118 specifies. Show symbolic values for some of the fields in the DHCP authentication option, and base the decision on whether to dissect the authentication data as HMAC-MD5 data on whether that's what the protocol and algorithm field specified. Show the replay detection value as a 64-bit number only if it's specified to be a monotonically-increasing counter; otherwise, just show it as bytes. svn path=/trunk/; revision=4116
2001-10-31Bug fixes and enhancements to Mobile IP, from David Frascone.Guy Harris2-139/+299
svn path=/trunk/; revision=4115
2001-10-31Put "extern" in front of a pile of function declarations.Guy Harris6-265/+296
It makes no difference if they really are function declarations; however, in plugins, when building on OSes that don't let dynamically-loaded modules access functions in the main program (e.g., Windows), when compiling a plugin, <plugin_api.h> defines the names of those functions as (*pointer_name), so they turn into declarations of pointer variables pointing to the functions in question, and, on platforms with a def/ref model in the linker, if a plugin has more than one source file that gets linked into the plugin, the linker may get upset at two definitions of the same variable. svn path=/trunk/; revision=4114
2001-10-31Add the Ethereal Web site's mirror of WinPcap to the dialog popped up ifGuy Harris1-2/+5
you try to capture on Windows without having WinPcap installed. svn path=/trunk/; revision=4113
2001-10-31Get rid of a bunch of stuff that was there to support non-tvbuffifiedGuy Harris8-167/+43
dissectors and that's no longer needed. svn path=/trunk/; revision=4112
2001-10-30Fix to desegmentation crash, from Ronnie Sahlberg.Guy Harris1-7/+14
svn path=/trunk/; revision=4111
2001-10-30Put in a note telling people NOT to use "tvb_get_ntohl()" orGuy Harris1-3/+11
"tvb_get_letohl()" to fetch IPv4 addresses. svn path=/trunk/; revision=4110
2001-10-30Fix a bunch of places where "tvb_get_letohl()" was being used to fetchGuy Harris2-74/+59
IP addresses - either use "tvb_memcpy()", or just use "proto_tree_add_item()" and leave the fetching up to the core Ethereal code. In the DVMRP dissector, replace a bunch of other "proto_tree_add_XXX()" calls with "proto_tree_add_item()", and use "tvb_reported_length_remaining()" rather than "tvb_length_remaining()" (if we didn't capture enough data because the snapshot length was too low, we *want* an exception to be thrown, so that the frame is marked as a "Short Frame"). svn path=/trunk/; revision=4109
2001-10-30IPv4 addresses should be entered in host byte order, not forcedGuy Harris1-33/+44
little-endian byte order. Use "proto_tree_add_item()" wherever possible. Get rid of line commented out with a C++ comment, as not all C compilers accept C++ comments. Don't put the user name into the protocol tree if it's not there (we really should do TCP segment reassembly for this, but this is at least a good first cut). When checking whether data exists in the packet, use "tvb_offset_exists()", don't compare the offset in the tvbuf with "pinfo->len" - "pinfo->len" is the length of the entire packet, not of the tvbuff. Fix some references to "pi" to refer to "*pinfo" instead. svn path=/trunk/; revision=4108
2001-10-30IPv4 addresses should be entered in host byte order, not forcedGuy Harris1-8/+8
little-endian byte order. svn path=/trunk/; revision=4107
2001-10-30Small fix to previous patch, from Motonori Shindo.Guy Harris1-5/+5
svn path=/trunk/; revision=4106
2001-10-30Squelch a GCC complaint.Guy Harris1-1/+2
svn path=/trunk/; revision=4105
2001-10-30From Shinsuke Suzuki: fix IPv6 PIM checksum computation code to matchGuy Harris3-5/+40
draft-ietf-pim-sm-v2-new-03. svn path=/trunk/; revision=4104
2001-10-30In "u64toa()":Guy Harris1-13/+13
If the byte being investigated is 0, don't just do a "continue"; this might be one of the passes on which we have to propagate carries, so skip the processing of that byte's bits, but fall through to the carry processing. In the carry processing loop, don't use "i" as the loop index, as we're already using it as the outer loop index. In "u64toh()", use lower-case letters rather than upper-case letters, as we use "%x" rather than "%X" to print 8, 16, 24, and 32-bit integral values in the "proto.c" code. svn path=/trunk/; revision=4103
2001-10-29Stop using "tvb_get_ntohll()" and "%llX" in the BOOTP dissector, as theGuy Harris8-113/+12
former depends on having "guint64" and the latter depends on "%ll[douxX]" being what's used to print 64-bit integers, and there are platforms on which Etheeal runs that don't have "guint64" or that don't use "%ll[douxX]" to print 64-bit integers. Get rid of the routines to extract 64-bit integers into "gint64"s and "guint64"s, as per Ronnie Sahlberg's suggestion, to discourage people from writing code that won't work on all platforms; they should be using FT_UINT64, or the routines in "int-64bit.c", instead. svn path=/trunk/; revision=4102
2001-10-29Constify arguments and variables.Guy Harris2-16/+22
svn path=/trunk/; revision=4101
2001-10-29Dissector converted to TVBuffers. The changes are originally fromJeff Foster1-253/+205
Pia Sahlberg <piabar@hotmail.com. svn path=/trunk/; revision=4100
2001-10-29From Ronnie Sahlberg: FT_UINT64 support, code to handle 64-bit integersGuy Harris14-96/+631
without requiring compiler support for them, and updates to the Diameter, L2TP, NFS, and NLM dissectors to use it and to the ONC RPC dissector to allow ONC RPC subdissectors to use it. svn path=/trunk/; revision=4099
2001-10-29Updates from Mike Frisch to reflect NFSv4 protocol changes.Guy Harris3-258/+360
svn path=/trunk/; revision=4098
2001-10-29The previous checkin also added PPP compressed datagram support.Guy Harris1-0/+1
svn path=/trunk/; revision=4097
2001-10-29PPP CCP support, from Motonori Shindo.Guy Harris2-2/+301
svn path=/trunk/; revision=4096
2001-10-28Clean up another signed vs. unsigned comparison warning - ifGuy Harris1-2/+6
"snprintf()" returns a negative number, that's an error, and we assume "errno" was set and return NULL, otherwise we cast its return value to "size_t" and compare it with the size of the buffer we were given, and, if it was bigger, we know that "snprintf()" didn't generate all the characters it could be cause they wouldn't have fit, so we set "errno" to ENOSPC and return NULL. svn path=/trunk/; revision=4095
2001-10-28Include <unistd.h>, if we have it, to declare "unlink()".Guy Harris1-1/+5
svn path=/trunk/; revision=4094
2001-10-28Check, in the configure script in the epan directory, whether we haveGuy Harris2-2/+6
"strptime()" and, if not, define NEED_STRPTIME_H. svn path=/trunk/; revision=4093
2001-10-28From Mike Frisch: Win32 systems don't have "strptime()", so we need toGuy Harris1-1/+2
use a replacement "strptime()" on those systems, and thus need to include "strptime.h" to declare "strptime()". svn path=/trunk/; revision=4092
2001-10-28"ftypes" and "dfilter" should depend on "config.h", so that if itGuy Harris1-2/+2
doesn't exist, or is out of date with respect to "config.h.win32", it's remade - stuff in "ftypes" and "dfilter" includes "config.h", and it should get the "config.h" in "epan". svn path=/trunk/; revision=4091
2001-10-27Section D.4.3 "Generating Cryptographic authentication" of RFC 2328 saysGuy Harris1-2/+6
that, when using cryptographic authentication, "The checksum field in the standard OSPF header is not calculated, but is instead set to 0"; treat a packet checksum value of 0 as meaning "no checksum present". svn path=/trunk/; revision=4090
2001-10-26Handle the 1.3 and 1.4 Content-Type values in WSP, from Tom Uijldert.Guy Harris1-1/+12
svn path=/trunk/; revision=4089
2001-10-26Fix the rest of the signed/unsigned comparison warnings.Gilbert Ramirez14-44/+46
svn path=/trunk/; revision=4088
2001-10-26Fix some signed/unsigned comparison warnings. In the case of tvbuff.h,Gilbert Ramirez6-31/+34
there were 2 functions which accepted 'maxlength' == -1, but the function prototypes had maxlength as a guint --- fixed. svn path=/trunk/; revision=4087
2001-10-26Make the protocol ID argument to "dissect_transform()" an "int", andGuy Harris1-36/+49
pass -1 in the cases where it's not called from "dissect_proposal()", i.e. where there *is* no protocol ID to pass it, and have it dissect the transform ID only as a number if the protocol ID isn't one of the ones we know about. Give the payload dissectors other than "dissect_transform()" an extra "int" argument, so that their signature is the same as that of "dissect_transform()", put "dissect_transform()" back in the "strfuncs[]" table, and get rid of the special-casing of "dissect_transform()" in "dissect_payloads()". svn path=/trunk/; revision=4086
2001-10-26In "get_pointer_value()", don't include the terminating '\0' whenGuy Harris1-105/+138
formatting the string as text. In "add_pointer_param()", make the offset in the text item for the string the offset in the string area, not the offset of the pointer itself. Fix some items in item lists to have "lm_null" rather than a null pointer, so that if we don't find an entry for the detail level, we don't blow up dereferencing a null pointer, we just dissect all the items based on the type in the descriptor string. If we don't have a data descriptor for response data, just put in an entry for the data; that may happen if we only dissected part of the request to which the stuff we're dissecting is a reply, e.g. because the snapshot length didn't let us capture all of the request. svn path=/trunk/; revision=4085
2001-10-26Guard against erroneously calculating a negative length during theGilbert Ramirez1-9/+11
processing of sub-options. svn path=/trunk/; revision=4084
2001-10-26Fix improper uses of proto_tree_add_item(). When possible, switch toGilbert Ramirez1-83/+24
using proto_tree_add_item(). svn path=/trunk/; revision=4083
2001-10-25We no longer try to dissect payloads of type "None", so get rid ofGuy Harris1-9/+3
"dissect_none()". svn path=/trunk/; revision=4082
2001-10-25Loop over all the sub-payloads of a Security Association payload; make aGuy Harris1-48/+82
common routine that loops over payloads. Have that routine check for a payload of type "None", which means that there's extra data after a payload that claimed to be the last one (by virtue of having a next payload type of "None"). When dissecting a Security Association payload, make sure we have enough data for the Domain of Interpretation field before putting it into the tree, dissect the situation as a 4-byte quantity followed by a set of sub-payloads only of the DOI is "IPSEC" (otherwise dissect it as raw data), and make sure we have enough data for the 4-byte situation field before putting it into the tree. When dissecting a Proposal payload, show the raw bytes of the SPI. svn path=/trunk/; revision=4081
2001-10-25Don't try to dissect a gnutella sub-header if the length of the sub-headerGilbert Ramirez1-71/+74
is 0. svn path=/trunk/; revision=4080
2001-10-25Guard against 'size' being too small; the value comes from the packet,Gilbert Ramirez1-7/+16
so it can be corrupt. svn path=/trunk/; revision=4079
2001-10-25Interface type 0x07 is Ethernet.Gilbert Ramirez1-2/+2
svn path=/trunk/; revision=4078
2001-10-25Get rid of signed/unsigned comparison warnings in wiretap.Gilbert Ramirez6-23/+24
svn path=/trunk/; revision=4077
2001-10-25Update from Frank Singleton:Guy Harris1-8/+23
- Handle "short" as a union discriminant type - Handle case where union discriminant may be a typedef - Change integer template to long template - Initial code for \n and \t as union case labels. svn path=/trunk/; revision=4076
2001-10-25Use "g_warning" to print warning messages from "pcap_open_live()", asGuy Harris1-2/+2
that should cause it to show up in a console window if run from Ethereal on Windows. svn path=/trunk/; revision=4075
2001-10-25Handle "pcap_open_live()" succeeding but returning a warning; print theGuy Harris2-23/+44
warning before the capture starts. svn path=/trunk/; revision=4074
2001-10-24Fix compile errors and code errors in the Win32 code.Guy Harris1-4/+9
svn path=/trunk/; revision=4073
2001-10-24Have a routine that takes a file name for a personal configuration fileGuy Harris9-90/+148
and generates the path name; have it, if the file is to be opened for reading on Win32, check whether it exists and, if not, check for it in the old home directory-based configuration directory and, if so, return that path instead, so that files saved with earlier versions of Ethereal will be seen. svn path=/trunk/; revision=4072
2001-10-24On Windows, put Ethereal configuration files under the "ApplicationGuy Harris7-40/+113
Data\Ethereal" directory under the user's profile, as that appears to be the Windows 2000 standard. svn path=/trunk/; revision=4071
2001-10-23Show parameter types in hex.Guy Harris1-31/+25
Make enumerated types be fields with a value_string table, so that you can filter on them by name. svn path=/trunk/; revision=4070