Commit Graph

102 Commits

Author SHA1 Message Date
Stig Bjørlykke 825f3d64e0 Put check_col() in each column util function, as discussed in bug 2902.
This will eliminate some problems when not checking before calling the 
functions, and makes the dissector code looks cleaner.

Cleaning up the dissectors is TBD.

svn path=/trunk/; revision=27806
2009-03-20 12:41:03 +00:00
Stig Bjørlykke 965448f3e7 From Jakub Zawadzki (bug 3334):
Fix typo in filter name for frame.len (Packet length column).

svn path=/trunk/; revision=27721
2009-03-15 13:50:42 +00:00
Jaap Keuter acdf91e263 Make "Copy as Filter" on the packet list actually work.
Up till now every packet in the packet list got a copy of the pointer to the filter expressions for
the last packets' columns. Hence any 'Copy as Filter" on a column got the expression of the last
packet in the packet list. Instead every packet needs to get a pointer to the filter expressions 
for its own columns. This requires making a copy of the filter expressions themselves.

Since this is a bug in 1.0 as well the GLIB1 code is provided for backporting, which can later be dropped from the development tree.

svn path=/trunk/; revision=27396
2009-02-09 07:10:46 +00:00
Stig Bjørlykke c64847fe16 Update all time columns when changing the time precision.
Not implemented for conversation relative and delta time yet, because this
will need a reload as they are set by the dissectors and does not exist in
the frame data.

svn path=/trunk/; revision=25452
2008-06-14 16:51:11 +00:00
Stig Bjørlykke 1b4857ee33 Initialize ipv6_addr before we use it.
svn path=/trunk/; revision=24553
2008-03-04 18:55:36 +00:00
Stig Bjørlykke fd906bb33a Free compiled dfilter after usage.
svn path=/trunk/; revision=24549
2008-03-04 12:12:41 +00:00
Stephen Fisher ea297f369f Convert strcpy() calls to g_strlcpy()
svn path=/trunk/; revision=24532
2008-03-02 23:45:24 +00:00
Stephen Fisher 56226b49b8 Custom column updates:
- Change apply / prepare / ... as filter to use the field's value, which
   is now stored in fdata as well as cinfo.  Now we don't have to reprocess
   the entire packet list when using these features.  This also prevents
   the use of these features from overwriting custom column information.
   (custom columns can now be used in apply / prepare ... as filter)
 - Break col_expr and col_expr_val out into a struct that is included not only
   in cinfo, but now also fdata.
 - Have col_custom_set_fstr() quote FT_STRING & FT_STRINGZ when storing the
   col_expr_val value (for filter creation).


svn path=/trunk/; revision=24511
2008-03-01 05:16:45 +00:00
Stig Bjørlykke 51b26f95f3 Improved custom columns with custom title.
Fixed a crash when adding an empty custom field.

svn path=/trunk/; revision=24438
2008-02-22 22:47:19 +00:00
Stig Bjørlykke 3ebc2a4d00 Check for existing cinfo in have_custom_cols().
This fixes the latest buildbot fuzz failures.

svn path=/trunk/; revision=24421
2008-02-22 13:41:25 +00:00
Stephen Fisher c7d656555a Use custom column check function for custom columns to make sure the dfilter
is always primed when needed.  This ensures more than just the first row
has a custom column's information in it.


svn path=/trunk/; revision=24413
2008-02-22 01:25:45 +00:00
Stephen Fisher 8f3a1b0d16 Check in changes originally checked in as SVN revision 24308 (new column
type: Custom) that were backed out in SVN revision 24309.

Changes since that revision include a reworking of the handling of the
cfile/cinfo variables in epan/column-utils.c, addition of three new
functions to libwireshark.def and a bug fix to prevent a crash when no
custom columns were not in use.

Compilation verified locally on MacOS X, Linux and Windows.


svn path=/trunk/; revision=24317
2008-02-13 05:05:33 +00:00
Stephen Fisher 5e893a8b1c Revert commit 24308 until I can get it to compile on Windows/Linux/Solaris
(strangely, it compiled fine on my MacOS X machine).


svn path=/trunk/; revision=24309
2008-02-12 08:09:22 +00:00
Stephen Fisher 0a85a9e4c6 Introduce a new column type called custom, which lets you put any display
filter name in the description field and it will display that field in the
packet list if it occurs in that packet.  Note that the more common fields
are implemented, but a number of them remain to be implemented in
epan/proto.c.  I will work on these other fields as I have time.


svn path=/trunk/; revision=24308
2008-02-12 03:16:09 +00:00
Anders Broman 1143ab41b1 Apply yet another set of the optimization patches:
- Use a fast path for the most common use of tvb_get_xxx functions:
offset is >= 0 and tvb->real_data is set (this one is always true).
- match_strval() is a linear search, put the most common protocols
TCP/UDP/RDP first.
- fix gtk1 g_strlcat declaration Use g_strlcat

svn path=/trunk/; revision=23285
2007-10-27 14:44:29 +00:00
Anders Broman 3a16fb20a3 Apply yet another set of the optimization patches:
Replace strncpy with g_strlcpy.
Add g_strlcat for GTK1 and don't use g_snprintf in GTK1 g_strlcpy
printf family is very slow.

svn path=/trunk/; revision=23273
2007-10-26 05:42:12 +00:00
Sake Blok a592e6412c This patch adds two new column types:
- COL_REL_CONV_TIME which is used to display the time relative to the first frame that was seen in the conversation
- COL_DELTA_CONV_TIME which is used to display the delta time from the previous frame of the conversation

It also adds the function "col_set_time()" to "epan/column-utils.[ch]" which can be called from within a dissector to set either of these two columns to the appropiate time.

Last but not least, it lets the tcp-dissector make use of these two columns.


svn path=/trunk/; revision=23058
2007-10-03 14:02:08 +00:00
Mike Duigou 2697adeda4 Special casing is no longer necessary for formatting of AT_STRINGZ in col_set_addr() as
address_to_str_buf() does now take COL_MAX_LEN as a parameter.

Add support for AT_URI to col_expr for addresses in col_set_addr(). The field names are "uri.src" and "uri.dst".


svn path=/trunk/; revision=23017
2007-09-28 19:00:45 +00:00
Mike Duigou 6aeb75c3f0 Changes get_addr_name_buf() to use the more common convention where the provided buffer size is the entire size of the buffer including the space for the terminating \0
svn path=/trunk/; revision=23016
2007-09-28 18:23:59 +00:00
Gerald Combs 72daa58e19 Instead of converting between 802.11 frequencies and channels umpteen
different ways, add a set of common conversion routines.  Add a
"Frequency/Channel" column and fill it in where we can.  Fix RSSI column
printing in PPI.

Fix up whitespace along the way.

svn path=/trunk/; revision=22538
2007-08-17 19:34:14 +00:00
Ulf Lamping 3b509e89ae - add a column for the expert info severity level
- fix a column related bug introduced in SVN 20118

svn path=/trunk/; revision=22387
2007-07-23 20:11:05 +00:00
Stephen Fisher 8fd3ee0560 Remove almost all of the casts I committed recently and in place of
them, add -Wno-pointer-sign to CFLAGS when gcc will accept it.


svn path=/trunk/; revision=21253
2007-03-28 21:55:11 +00:00
Ulf Lamping 5aa4b3cecd remove remaining warnings in epan dir and set the "treat warning as error" barrier
(epan/dissectors still waiting for a cleanup)

svn path=/trunk/; revision=21181
2007-03-25 15:13:03 +00:00
Stephen Fisher 2896811274 Fix about 150 warnings new to gcc 4.0 in the error on warning directories.
Comment out -Werror in plugins/asn1/ until warnings can be fixed.


svn path=/trunk/; revision=21158
2007-03-23 22:49:23 +00:00
Stephen Fisher 6d8d2854c8 From Sake Blok:
Fix for bug #491: Unexpected frame.time_delta behavior

This patch ... fixes bug 491. It does this by changing the
behaviour of the frame.time_delta field so it reflects the delta
time between captured packets (tshark already did this).  To keep
the delta time between displayed packets, the field 
frame.time_delta_displayed is created.


svn path=/trunk/; revision=21154
2007-03-23 18:08:17 +00:00
Ulf Lamping b323125a9c fix some more warnings
svn path=/trunk/; revision=21105
2007-03-22 00:49:06 +00:00
Stephen Fisher f4e0b64fe7 From Thomas Sillaber:
Create two new columns: IP DSCP and L2 COS (802.1p)


svn path=/trunk/; revision=20118
2006-12-11 20:24:51 +00:00
Stephen Fisher 75acf34518 From Douglas Pratley with trivial changes and documentation changes
by myself:

Corrected patch; epan/column.c and epan/column_utils.c were not included. This
one has now been properly tested against a clean checkout of today's code.

- New menu option available under view\time display format
- New sub-option (e) to -t switch for both wireshark and tshark
- Extended recent settings code to handle new value
- Did NOT add new explicit epoch time column


svn path=/trunk/; revision=20040
2006-12-05 03:19:51 +00:00
Anders Broman 6c9ce8acf8 Froim Rene Pilz:
This patch consists also the last issues. Additionally it solves:
- For the SSCOP frames the AAL5 decoding was not performed due to an earlier patch. This caused that no SSCOP message was properly decoded.
- As the detection between a LANE frame and a SSCOP frame is rather hard a switch within the atm dissector is included which enforce SSCOP dissecting over a LANE frame. At the moment I do not see a better solution for that.

svn path=/trunk/; revision=20013
2006-11-29 06:44:07 +00:00
Ronnie Sahlberg 714ce64b12 add a new port type for usb endpoints
start introducing conversations to the usb dissector so that we can start tracking requests/responses
which we need to in order to dissect for example the data returned by a device to a GET DESCRIPTORS call



svn path=/trunk/; revision=19539
2006-10-15 06:10:59 +00:00
Ulf Lamping ecb07acdef add a new column DCE/RPC context ID
svn path=/trunk/; revision=18578
2006-06-26 20:46:15 +00:00
Ronnie Sahlberg 89f022b12b name change
svn path=/trunk/; revision=18197
2006-05-21 05:12:17 +00:00
Jörg Mayer 256225d73f Mike Hall:
This will add the ability to configure a .1q vlan column in ethereal.

Me:
Change 1q -> 1Q

svn path=/trunk/; revision=17058
2006-01-20 08:48:43 +00:00
Jörg Mayer 5222a20c1c "Fix" for warning: enumeration value 'TS_NOT_SET' not handled in switch
Just g_assert until someone who understands the code checks in a real
   fix.

svn path=/trunk/; revision=16855
2005-12-18 23:29:37 +00:00
Ronnie Sahlberg 4e4f6d67fa in svn 15335 the tcp analysis was changed to do its stuff and to populate (prepend to) COL_INFO before callking the subdissectors
instead of calling the tcp analysis (and prepend colingo) eitehr after the subdissector returned normally  or if an exception caused by a subdissector was rised.

this as a sideffect caused tcp analysis data to be overwritten if the subdissector caused any output to the info column. (and made tcp analysis suboptimal)


this change adds a new function   col_prepend_fence_fstr()  that will prepend
the info column with the string and also, if there was no fence already defined, create a fence and set it after the prepended col info text.

This way, even if the subdissectors generate and rewrite col info, the tcp analysis data will still be displayed on the info column.



svn path=/trunk/; revision=16116
2005-10-04 13:34:52 +00:00
Ulf Lamping 3b66410f77 add doxygen comments to column-utils.h and do a slight code cleanup
svn path=/trunk/; revision=16066
2005-10-02 14:56:27 +00:00
Gerald Combs 02b91e3978 If we set one or more time references and then changed the time display
format, our time-formatted columns would display a time value instead of
"*REF*".  Don't to that.

svn path=/trunk/; revision=15645
2005-08-31 21:38:08 +00:00
Ulf Lamping 723c80ea90 timestamp display precision:
- automatic adjustment depending on file format
- manual adjustment through menu items

save the setting in the recent file

svn path=/trunk/; revision=15534
2005-08-25 21:29:54 +00:00
Ulf Lamping 6f43fbb2f0 EVERYTHING IN THE BUILDBOT IS GOING TO BE RED!!! Sorry!
I've done more than a day to change the timestamp resolution from microseconds to nanoseconds. As I really don't want to loose those changes, I'm going to check in the changes I've done so far. Hopefully someone else will give me a helping hand with the things left ...

What's done: I've changed the timestamp resolution from usec to nsec in almost any place in the sources. I've changed parts of the implementation in nstime.s/.h and a lot of places elsewhere.

As I don't understand the editcap source (well, I'm maybe just too tired right now), hopefully someone else might be able to fix this soon.

Doing all those changes, we get native nanosecond timestamp resolution in Ethereal. After fixing all the remaining issues, I'll take a look how to display this in a convenient way...

As I've also changed the wiretap timestamp resolution from usec to nsec we might want to change the wiretap version number...

svn path=/trunk/; revision=15520
2005-08-24 21:31:56 +00:00
Ulf Lamping 994496a184 several times replacing:
sprintf -> g_snprintf
snprintf -> g_snprintf
vsnprintf -> g_vsnprintf
strdup -> g_strdup

svn path=/trunk/; revision=15412
2005-08-18 19:31:15 +00:00
Ulf Lamping 0dc9fb3d4a various code cleanup:
-use g_snprintf instead of sprintf and snprintf
-use g_strdup_printf where appropriate
-remove #include "snprintf.h" (as only g_snprintf should be used)
-replace some more alloc/realloc/calloc/free with their glib pendants

svn path=/trunk/; revision=15264
2005-08-08 18:50:39 +00:00
Ulf Lamping 3d831f4bfb add a new DCE/RPC related column, which contains the call_id for connection oriented packets or the sequence number for connectionless (datagram) packets.
This is extremely useful, to keep track of the corresponding request/response packets of a DCE/RPC call (which can be quite a lot packets if fragmentation is used).

svn path=/trunk/; revision=14826
2005-06-30 22:46:19 +00:00
Ronnie Sahlberg 3b435e70a3 From Mark C Brown NETTL updates
svn path=/trunk/; revision=13999
2005-04-01 10:17:05 +00:00
Guy Harris e41c4740c9 Handle XNS IDP socket numbers.
Handle SMB-over-SPP.

svn path=/trunk/; revision=13635
2005-03-06 20:13:58 +00:00
Luis Ontanon f0c8a7ab65 From Francisco Alcoba:
changed the behaviour of get_addr_name:
 - resolve to a name if the address supports it
 - call address_to_str if it does not, but the address is valid
 - return "NONE" if it is AT_NONE


svn path=/trunk/; revision=13463
2005-02-22 01:55:04 +00:00
Guy Harris f2972f0925 Properly cast the pointer assigned to col_info->col_data.
svn path=/trunk/; revision=12889
2004-12-31 02:03:16 +00:00
Guy Harris 467e33d1b1 Make the "col_data" field in a "column_info" structure a pointer to an
array of "const char *" rather than to an array of "char *", and make
the second argument of "col_set_str()" a "const char *" - there's no
guarantee that "col_data" points to something you're allowed to modify.

svn path=/trunk/; revision=12875
2004-12-30 23:42:02 +00:00
Guy Harris 0ccf418724 Add a "get_addr_name()" routine that takes an "address *" and attempts
to resolve it to a name.

Fix up some const-pointer-to-non-const-pointer, and
function-pointer-to-void-*, conversions.

Fix some comments.

svn path=/trunk/; revision=12863
2004-12-30 02:10:24 +00:00
Guy Harris f724a1399f From Tomas Kukosa: fix "col_set_str()" to work correctly with fenced
columns.

svn path=/trunk/; revision=12283
2004-10-12 18:08:23 +00:00
Guy Harris cc5f5d5d5d When deciding whether to add a separator or not, look at the buffer to
which we're going to append the data.

svn path=/trunk/; revision=11820
2004-08-24 08:20:20 +00:00