aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2001-01-14Add the PPP types for the DEC LANBridge100 Spanning Tree protocol andGuy Harris4-10/+20
for "Bridging PDU"s (which I'm assuming are 802.1d Spanning Tree BPDUs), and have the STP and LANBridge100 STP dissectors register them with the "ppp.protocol" dissector table. Fix the value for the PPP type for MPLS Multicast (it's 0x0283, not 0x0281). svn path=/trunk/; revision=2896
2001-01-13Update from Michael Tuexen.Guy Harris1-1/+3
svn path=/trunk/; revision=2895
2001-01-13Tvbuffify the SRVLOC dissector, and start trying to deal with multipleGuy Harris1-302/+303
character sets in it (we currently only handle a few character sets, and all "handle" means, so far, is "display the name of the character set as well as the numerical value; we don't actually handle, say, Unicode in such a way as to keep a Unicode version of an ASCII string from having every other byte be "\000"). svn path=/trunk/; revision=2894
2001-01-13Make GRE use a dissector table for its protocol types, and registerGuy Harris8-65/+81
dissectors for protcools that can be encapsulated inside GRE in that table. Fix a bug in the handling of WCCPv2 IP encapsulation (it was constructing the next tvbuff before, rather than after, advancing the offset past the redirection header). svn path=/trunk/; revision=2893
2001-01-13Tvbuffify the PIM dissector.Guy Harris7-293/+273
It was the last dissector that used "old_call_dissector()", and tvbuffifying it got rid of that, so get rid of "old_call_dissector()". svn path=/trunk/; revision=2892
2001-01-13Support for dissectors registering themselves with a particular SCTPGuy Harris2-10/+15
payload protocol ID as well as with a particular SCTP port number, from Michael Tuexen. svn path=/trunk/; revision=2891
2001-01-13Also save and restore the value of "pinfo->match_port" inGuy Harris1-3/+9
"{old_}dissector_try_port()", so that its value doesn't get changed out from under a dissector that calls "{old_}dissectory_try_port()". svn path=/trunk/; revision=2890
2001-01-13Actually call capture_sll() from the capture loop.Gilbert Ramirez3-2/+37
svn path=/trunk/; revision=2889
2001-01-13Support for the VTP Management Domain item in CDP packets, from KentGuy Harris3-9/+31
Engstr�m. svn path=/trunk/; revision=2888
2001-01-13Make top-level items for interleaved RTSP packets be items for the RTSPGuy Harris1-2/+2
protocol, as well as top-level items for regular RTSP, so that the filter expression "rtsp" matches both of them. svn path=/trunk/; revision=2887
2001-01-12In all the routines that set "pinfo->current_proto" before calling aGuy Harris1-6/+36
dissector, save the current value of "pinfo->current_proto" and restore it before returning; when you return, you're back in the dissector that called the routine to call a dissector, so the current protocol is the one for that dissector. This may be important if a dissector calls a subdissector and, after it returns, processes stuff in the packet after the stuff dissected by the subdissectror. This means it's safe for "dissector_try_heuristic()" to set it before calling a heuristic dissector, as it'll put back the previous value when it returns. svn path=/trunk/; revision=2886
2001-01-12Increment module version.Gilbert Ramirez2-2/+2
svn path=/trunk/; revision=2884
2001-01-12Move the libethereal version to 0.8.15, and use the C preprocessorGilbert Ramirez3-9/+9
macro "VERSION" to create the version-specific directory name for plugins in plugins.c svn path=/trunk/; revision=2883
2001-01-12Change version numbers to 0.8.15Gilbert Ramirez6-26/+26
svn path=/trunk/; revision=2882
2001-01-12Explain the installation location of plugins on win32.Gilbert Ramirez1-1/+10
svn path=/trunk/; revision=2881
2001-01-11Some cleanups.Guy Harris1-3/+3
svn path=/trunk/; revision=2880
2001-01-11Get rid of trailing blanks in strings.Guy Harris1-3/+3
svn path=/trunk/; revision=2879
2001-01-11Interleaved RTSP support, from Jason Lango.Guy Harris1-4/+92
svn path=/trunk/; revision=2878
2001-01-11Add list of changes for 0.8.15 release.Gilbert Ramirez1-0/+61
svn path=/trunk/; revision=2877
2001-01-11Update the SCTP dissector, and add a dissector forGilbert Ramirez5-338/+1456
ISDN Q.921-User Adaptation Layer (IUA). Both are from Michael.Tuexen@icn.siemens.de> svn path=/trunk/; revision=2876
2001-01-11Only define next_pd and next_offet if HAVE_PLUGINS is #defined, sinceGilbert Ramirez1-1/+3
that's the only time they're used. svn path=/trunk/; revision=2875
2001-01-11"dissect_llc()" is called for RFC 2684 LLC Encapsulation over ATM, soGuy Harris1-12/+2
LLC *does* have to support bridged frames over ATM; the correct bridge padding is 2 (well, except for bridged 802.6 frames, but, if we ever support that, we just wouldn't add "bridge_pad" to "offset+5" when constructing the next tvbuff). svn path=/trunk/; revision=2874
2001-01-11Add a python script which has the same functionality as the shellGilbert Ramirez4-7/+138
script 'make-reg-dotc'. It is used only in the Win32 build because the make-reg-dotc shell script is *so* sloooooooooow on Win32, due to the multiple processes (grep, grep, sed) launched multiple times for each source file. By putting all the text-mangling logic into a single Python script, only one process is launched, and the source files are read only once. It's *a lot* faster... seconds instead of minutes. svn path=/trunk/; revision=2873
2001-01-11Provide a way by which protocols that run atop HTTP, such as IPP, canGuy Harris4-132/+163
register their port as being for XXX-over-HTTP; the HTTP dissector registers that port in the "tcp.port" table as an HTTP port, and registers it in its *own* table with the dissector and protocol provided to it. Parse the HTTP MIME headers regardless of whether we're building a protocol tree or not; we have to do so in order to find the offset of the payload, to hand to an XXX-over-HTTP dissector. svn path=/trunk/; revision=2872
2001-01-11Get rid of the magic "+4" and properly calculate the lineheight soGilbert Ramirez1-4/+4
that automatic scrolling of the hex pane continues to work, but without any special magic constant. This works for any size font (as long as the font isn't so big as to cause a line wrap), and has been tested on Linux and NT4. The lineheight calculation was found in the source code to the GtkText widget (gtk/gtktext.c in the GTK+ distribution). svn path=/trunk/; revision=2871
2001-01-11"dissect_http()" doesn't need to be global any more; make it static.Guy Harris4-36/+10
svn path=/trunk/; revision=2870
2001-01-11There's no need to register port 631 twice for IPP; do so only once.Guy Harris2-20/+31
Leave notes for a future rethinking of the way we handle protocols that run atop HTTP. svn path=/trunk/; revision=2869
2001-01-11Show the menu_item widget during the creation of an option menu forGilbert Ramirez1-1/+2
enumerated option lists. This to overcome a small bug in which the menu item text doesn't have enough vertical padding. svn path=/trunk/; revision=2868
2001-01-10The difference between two pointers doesn't necessarily fit in an "int"Guy Harris1-3/+4
or "unsigned int"; cast it to "unsigned long" and print it with "%lu", so it works on ILP32 and LP64 platforms. svn path=/trunk/; revision=2867
2001-01-10Include "snprintf.h", if necessary, to declare "snprintf()".Guy Harris1-1/+5
svn path=/trunk/; revision=2866
2001-01-10When testing the low-order bit of a pointer, cast it to "unsigned long",Guy Harris1-2/+2
not to "int", to squelch complaints from GCC on LP64 platforms such as most UNIXes on Alpha. svn path=/trunk/; revision=2865
2001-01-10Fix call to "pntohs()" - it was missing the "pd+", so it was justGuy Harris1-2/+2
passing the offset in the packet, not a pointer into the packet, to "pntohs()". svn path=/trunk/; revision=2864
2001-01-10The frame control field is, I infer from "dissect_ieee80211()",Guy Harris1-2/+2
little-endian, so "capture_ieee80211()" should use "pletohs()", not "pntohs()", to fetch it. Also, "pletohs()" takes a *pointer* to the object to be fetched as an argument. svn path=/trunk/; revision=2863
2001-01-10Change from Jeff Foster to keep the dissector from crashing if theGuy Harris1-4/+15
conversation it found has no data associated with it; this is a workaround for a problem that shows up if a conversation is between two ports both of which have protocols associated with them - in that case, frames going in one direction might be dissected by one of those dissectors, and frames going in the other direction might be dissected by the other dissector, causing untold confusion. We really need to associate dissectors with conversations as soon as the conversation is created, so that all packets will be handled by the same dissector. (The SOCKS dissector now does that.) svn path=/trunk/; revision=2862
2001-01-10In "{old_}dissector_try_port()", check whether the protocol for theGuy Harris1-2/+75
dissector is enabled and, if not, return FALSE, just as if there hadn't been any entry for that port number in the table. If it is enabled, set "pinfo->current_proto" from its short name before calling the dissector. In "dissector_try_heuristic()", check whether the protocols for dissectors are enabled and, if not, skip those dissectors, just as if they hadn't been in the table. (We don't set "pinfo->current_proto" before calling a dissector, as we don't know whether the dissector in question will be the one to dissect the packet. Arguably, we should have, for heuristic dissectors, separate "recognize" and "dissect" routines, where the former never throws an exception and returns TRUE or FALSE, and the latter is called only if the "recognize" routine claimed the frame, and is just a "dissector_t" that doesn't return a value.) In "{old_}call_dissector()", check whether the protocol for the dissector is enabled and, if not, call "{old_}dissect_data()". if it is enabled, set "pinfo->current_proto" from its short name before calling the dissector. svn path=/trunk/; revision=2861
2001-01-10Put in some XXX comments.Guy Harris1-1/+8
svn path=/trunk/; revision=2860
2001-01-10Fix up Gerald's e-mail address to be his "ethereal.com" address.Guy Harris8-11/+11
svn path=/trunk/; revision=2859
2001-01-10Fix up the "ethereal-dev" address to refer to "ethereal.com" rather thanGuy Harris3-11/+11
"zing.org". (We leave addresses in header lines in included mail messages alone.) svn path=/trunk/; revision=2858
2001-01-10Clarify which filter expressions on the command line are capture filtersGuy Harris2-5/+9
and which are display filters. svn path=/trunk/; revision=2857
2001-01-10Update a comment.Guy Harris1-5/+12
svn path=/trunk/; revision=2856
2001-01-10M3UA (MTP3 User Adaptation layer) support, from Michael Tuexen.Guy Harris4-3/+979
svn path=/trunk/; revision=2855
2001-01-10Make the stuff to handle SNAP frames (OUI, PID, payload) a routine ofGuy Harris16-149/+422
its own; it's used not only by LLC, but by Frame Relay with RFC 2427 and ATM with RFC 2684. Support for RFC 2427-encapsulation Frame Relay packets, from Paul Ionescu. Get rid of the CISCO_IP PPP protocol type - Cisco HDLC uses, in most cases, Ethernet packet types, so use ETHERTYPE_IP instead (they're both 0x0800). svn path=/trunk/; revision=2854
2001-01-10Change e-mail list addresses from zing.org to ethereal.com.Gilbert Ramirez1-4/+4
svn path=/trunk/; revision=2853
2001-01-10Tvbuffify the SNA dissector.Gilbert Ramirez1-324/+317
svn path=/trunk/; revision=2852
2001-01-09Register the IPX dissector, make it static, and call it through aGuy Harris7-19/+37
handle. Call the IP dissector through a handle in the Frame Relay dissector. svn path=/trunk/; revision=2851
2001-01-09Add a new "ip_to_str_buf()" routine that takes a pointer to an IPGuy Harris3-22/+35
address and a pointer to a character buffer as arguments, and puts a printable form of the IP address into the buffer. Make "ip_to_str()" use it. Make "host_name_lookup()" use "ip_to_str_buf()", not "ip_to_str()", so that it doesn't trash any strings that a dissector has gotten with "ip_to_str()" (for example, the ARP dissector gets strings for the source and target protocol addresses, and then may attempt to register names for the source and target hardware addresses with "add_ether_byip()"; if "host_name_lookup()" fails to find a host name for the IP address, it shouldn't use "ip_to_str()" to generate an IP address string to associate with the IP address, as if that's done twice it'll run out of "ip_to_str()" buffers - there're only 3 of them - and trash one of the IP address strings the ARP dissector got). svn path=/trunk/; revision=2850
2001-01-09Add an additional "protocol index" argument to "{old_}dissector_add()",Guy Harris125-364/+460
"{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-09Add tables of "conversation" dissectors, which are associated withGuy Harris6-4/+128
particular protocols, and which keep track of all dissectors that could be associated with conversations using those particular protocols - for example, the RTP and RTCP dissectors could be assigned to UDP conversations. This is for future use with UI features allowing the dissector for a given conversation to be set from the UI, to allow 1) conversations between two ports, both of which have dissectors associated with them, that have been given to the wrong dissector to be given to the right dissector; 2) conversations between two ports, neither of which have dissectors associated with them, to be given to a dissector (RTP and RTCP, for example, typically run on random ports, and if you don't have, in a capture, traffic that would say "OK, traffic between these two hosts and ports will be RTP traffic", you may have to tell Ethereal explicitly what protocol the conversation is). svn path=/trunk/; revision=2848
2001-01-09If the target hardware address in an ARP packet is a broadcast address,Guy Harris1-3/+9
don't give that address the host name corresponding to the target IP address. svn path=/trunk/; revision=2847
2001-01-09Don't do the "select()" in the capture codepath on Win32; it's notGuy Harris1-4/+20
necessary, and won't necessarily work. svn path=/trunk/; revision=2846