is being added
- MPLS Traffic Engineering extensions for RSVP
- MPLS-encapsulated IP packets on Ethernet
- OSPF Extensions for MPLS (including generic opaque LSA
support for OSPF)
THe following features will be committed at a later date (if I get around
to writing them :-)
- Label Distribution Protocol (LDP)
- IS-IS Extensions for MPLS
svn path=/trunk/; revision=1707
which means we're already doing a "do something to the last row in the
packet list" operation on every frame we add to the list, so adding a
call to "gtk_clist_set_row_data()" won't make matters worse.
In addition, we already set one column in a row on a "change time
format" operation, so finding the row for a frame by calling
"gtk_clist_find_row_from_data()" doesn't turn a constant-time operation
into a linear-time operation, it just cranks the proportionality
constant up - it was quadratic before, alas, and it's still quadratic.
Adding calls to "gtk_clist_find_row_from_data()" to the "Find Frame" and
"Go To Frame" code does add an extra linear operation there, but those
operations shouldn't be common - and "Go To Frame", going to the last
frame on an ~100,000-frame big capture file, was quick, at least on my
450 MHz Pentium II machine, so maybe it won't be too bad.
And "select_packet()" either has to search the frame table for the frame
with the specified row number, or has to call "gtk_clist_get_row_data()"
to do that - the first is linear in the position of the frame in the
frame table, and the latter is linear in its position in the CList, and
the latter is less than or equal to the former, so the only thing making
it worse would be a change in the proportionality constant.
So it probably won't hurt performance by much.
Furthermore, if we add the ability to sort the display on an arbitrary
column, or to delete frames from the display - both of which are in the
wish list - storing the row number of the frame in the "frame_data"
structure won't necessarily work, as the row number can change out from
under us.
Therefore, reinstate the old way of doing things, where we associate
with each row a pointer to the "frame_data" structure for the row, using
"gtk_clist_set_row_data()".
svn path=/trunk/; revision=1703
they get from the packets are 16-bit unsigned quantities, which fit
comfortable within an "int" on all platforms we support. That
eliminates the some additional format/argument mismatches.
svn path=/trunk/; revision=1700
Reorganize "icqv5_cmd_send_text_code()" a bit so that it only puts an
item into the tree if it's present in the packet.
svn path=/trunk/; revision=1697
a fashion as not to cause GCC to whine about format/argument mismatches
if "proto.h" is tweaked to declare "proto_tree_add_text()" with an
"__attribute__((format (printf, ...))" clause.
svn path=/trunk/; revision=1693
"save session" feature in many Windows-based telnet apps. CRT, by VanDyke,
in particular, will put in newlines at 80 columns.
svn path=/trunk/; revision=1692
switch (xxx) {
...
default:
}
but Microsoft Visual C++ 6.0 insists that there be a statement following
the "default:" label, and other compilers may do the same - put in a
"break;" statement.
svn path=/trunk/; revision=1681
Ethernet; used for communication with Siemens S5 PLC's over Ethernet),
and his changes to display OSI COTP TSAPs that consist solely of
printable characters as text rather than as hex data and to decode the
version number resource in COTP.
svn path=/trunk/; revision=1677
the "Follow TCP Stream" displays; that means we can use the same GTK+
calls to set the scrollbar placement on them that is used to set it on
other widgets.
Keep a list of all the GtkScrolledWindows whose scrollbar placement we
control with the GUI preference item for that, and change them all when
the GUI preference item is changed (which means that the GUI preference
item now applies to the "Follow TCP Stream" window as well as to the
hex/ASCII panes).
svn path=/trunk/; revision=1676
destroy the data structure for that window, rather than doing so when
the "tree-unselect-row" signal catcher is unhooked from the tree view.
svn path=/trunk/; revision=1672
outside "packet-x25.c", it's only registered as a protocol init
routine), and explicitly declare it as taking no arguments (GCC doesn't
complain about passing a pointer to a routine with an unspecified
argument list to "register_init_routine()", which expects a pointer to a
routine with no arguments, but Microsoft Visual C{++} 6.0 does complain
about it).
svn path=/trunk/; revision=1664
specifies with "-f" and "-R" flags, respectively, or specified with
non-flag command-line arguments, as tcpdump and snoop allow.
svn path=/trunk/; revision=1663
tweaking HP-UX so that DLPI (and thus Ethereal/Tethereal and tcpdump)
can see, when capturing on a given machine, packets sent by that
machine.
svn path=/trunk/; revision=1660
"ds_set_boolean()" with the first two arguments being DS_LIBRARY_ID and
DS_LIB_PRINT_FULL_OID; this means that, when building with 4.1[.x]
(which we assume is the case if "snmp_set_full_objid" is defined, we
need to include <ucd-snmp/default_store.h>, to define those two values
and to declare "ds_set_boolean()".
svn path=/trunk/; revision=1657