Age | Commit message (Collapse) | Author | Files | Lines |
|
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
|
|
svn path=/trunk/; revision=2895
|
|
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
|
|
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
|
|
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
|
|
payload protocol ID as well as with a particular SCTP port number, from
Michael Tuexen.
svn path=/trunk/; revision=2891
|
|
"{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
|
|
svn path=/trunk/; revision=2889
|
|
Engstr�m.
svn path=/trunk/; revision=2888
|
|
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
|
|
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
|
|
svn path=/trunk/; revision=2884
|
|
macro "VERSION" to create the version-specific directory name for plugins
in plugins.c
svn path=/trunk/; revision=2883
|
|
svn path=/trunk/; revision=2882
|
|
svn path=/trunk/; revision=2881
|
|
svn path=/trunk/; revision=2880
|
|
svn path=/trunk/; revision=2879
|
|
svn path=/trunk/; revision=2878
|
|
svn path=/trunk/; revision=2877
|
|
ISDN Q.921-User Adaptation Layer (IUA).
Both are from Michael.Tuexen@icn.siemens.de>
svn path=/trunk/; revision=2876
|
|
that's the only time they're used.
svn path=/trunk/; revision=2875
|
|
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
|
|
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
|
|
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
|
|
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
|
|
svn path=/trunk/; revision=2870
|
|
Leave notes for a future rethinking of the way we handle protocols that
run atop HTTP.
svn path=/trunk/; revision=2869
|
|
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
|
|
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
|
|
svn path=/trunk/; revision=2866
|
|
not to "int", to squelch complaints from GCC on LP64 platforms such as
most UNIXes on Alpha.
svn path=/trunk/; revision=2865
|
|
passing the offset in the packet, not a pointer into the packet, to
"pntohs()".
svn path=/trunk/; revision=2864
|
|
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
|
|
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
|
|
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
|
|
svn path=/trunk/; revision=2860
|
|
svn path=/trunk/; revision=2859
|
|
"zing.org". (We leave addresses in header lines in included mail
messages alone.)
svn path=/trunk/; revision=2858
|
|
and which are display filters.
svn path=/trunk/; revision=2857
|
|
svn path=/trunk/; revision=2856
|
|
svn path=/trunk/; revision=2855
|
|
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
|
|
svn path=/trunk/; revision=2853
|
|
svn path=/trunk/; revision=2852
|
|
handle.
Call the IP dissector through a handle in the Frame Relay dissector.
svn path=/trunk/; revision=2851
|
|
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
|
|
"{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
|
|
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
|
|
don't give that address the host name corresponding to the target IP
address.
svn path=/trunk/; revision=2847
|
|
necessary, and won't necessarily work.
svn path=/trunk/; revision=2846
|