aboutsummaryrefslogtreecommitdiffstats
path: root/epan/epan.h
AgeCommit message (Collapse)AuthorFilesLines
2014-02-25Fix bug 6357: Lua all_field_infos() broken within tap/listenerHadriel Kaplan1-0/+12
The current API for Lua provides a global function "all_field_infos()" which returns all the populated field_info nodes in the current proto_tree. By default all_field_infos() "works", in the literal sense: it returns exactly the fields the previous dissectors of the packet have populated at that instant of time. But of course dissectors don't populate all the applicable fields most of the time, because of the TRY_TO_FAKE_THIS_ITEM optimization where they don't fill in things that aren't needed at the time by a display, color, or tap's dfilter. So this commit offers a way to force the dissectors to populate all the applicable field_infos in the tree, by setting the proto_tree to be visible. Obviously that is going to impact performance, since it basically bypasses the TRY_TO_FAKE_THIS_ITEM optimization; so the patch only does this if the Lua script author told it to explicitly, by adding an argument to Listener.new() and register_postdissector(). Change-Id: I11d3559fbe8c14fbadf1b51415a3701dc1200b7b Reviewed-on: https://code.wireshark.org/review/286 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-01-08TFShark (Terminal Fileshark) v.001. Bug 9607 ↵Michael Mann1-0/+11
(https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=9607) This is a VERY PRELIMINARY version of tfshark. It's an attempt to jumpstart FileShark and its architecture. Right now it's mostly just a very stripped down version of tshark with all of the necessary build modifications (including now building filetap library since tfshark depends on it) This code has helped me identify what I believe to be all of the necessary layers for a complete fileshark architecture. And those layers will slowly be added in time (patches always welcome!). svn path=/trunk/; revision=54646
2013-12-22Avoid including definition of column_info structure in dissectors.Jakub Zawadzki1-3/+3
Move COL_* enum to <epan/column-utils.h> XXX Later we can rename epan/column-info.h to column-int.h (or smth like this) svn path=/trunk/; revision=54352
2013-12-05Initialize the error-reporting routines before scanning for plugins, asGuy Harris1-6/+1
the code to scan for them uses those routines. This means epan_init() no longer takes those routines as arguments - which is just as well, given that the mechanism in question is no longer part of libwireshark, but is part of libwsutil. This should fix bug 9508. svn path=/trunk/; revision=53796
2013-12-03Rename struct _epan_dissect_t to epan_dissect.Jakub Zawadzki1-1/+1
svn path=/trunk/; revision=53770
2013-12-03Dissectors should not use dfilter.h, don't include it.Jakub Zawadzki1-2/+2
XXX ncp2222 dissector is using dfilter_compile(), why? svn path=/trunk/; revision=53766
2013-12-02Move most of the plugin code from epan to wsutil and remove allGuy Harris1-0/+10
knowledge of particular types of plugins. Instead, let particular types of plugins register with the common plugin code, giving a name and a routine to recognize that type of plugin. In particular applications, only process the relevant plugin types. Add a Makefile.common to the codecs directory. svn path=/trunk/; revision=53710
2013-10-20Reintroduce back epan_dissect_reset(), proto_tree_reset()Jakub Zawadzki1-0/+4
This time it makes more sense, cause for each dissection we need two wmem allocators. Reseting wmem allocator is much faster than destroy & create. svn path=/trunk/; revision=52706
2013-10-18After looking for something in the column-*.h files andJörg Mayer1-1/+1
not finding it, I finally found it in column_info.h Renamed column_info.h to column-info.h to have consistency with the column*h files. svn path=/trunk/; revision=52667
2013-08-01Remove fdata->opt_comment, add pkt_comment to pinfoJakub Zawadzki1-0/+2
Original (read from file) comments can be accessed by pkthdr->opt_comment Keep user comments in seperated BST, add new method for epan session to get it. svn path=/trunk/; revision=51090
2013-07-22Abuse epan_t more: add callback to get interface name.Jakub Zawadzki1-0/+2
svn path=/trunk/; revision=50794
2013-07-21Add helper function to epan_session which can be used to get absolute ↵Jakub Zawadzki1-0/+2
timestamp of given frame. Remove ->prev_cap, for testing purpose also replace ->prev_dis with number of previously displayed frame number. This patch reduce size of frame_data by 8B (amd64) This is what (I think) was suggested by Guy in comment 13 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=5821#c13) svn path=/trunk/; revision=50765
2013-07-21Some work on multi file dissectionJakub Zawadzki1-7/+4
- make init_dissection/cleanup_dissection private for libwireshark - implement epan_new(), epan_free() - pass epan_t to epan_dissect* svn path=/trunk/; revision=50761
2013-07-11packet dissection now takes pointer to tvb instead of guint8 dataJakub Zawadzki1-2/+2
implement frame_tvbuff, right now almost a copy of 'real' tvb. svn path=/trunk/; revision=50497
2013-05-22Turn "packet_is_ssl()" into a general "does the packet whose dissectionGuy Harris1-0/+6
is in this epan_dissect_t contain the field whose name is passed as an argument" routine in libwireshark, and use it where we used packet_is_ssl(). (We should check to see if anything *else* could use it.) svn path=/trunk/; revision=49530
2013-04-30A few more doxygen fix-ups.Evan Huus1-1/+0
svn path=/trunk/; revision=49092
2013-03-01Export libwireshark symbols using WS_DLL_PUBLIC defineBalint Reczey1-1/+15
Also remove old WS_VAR_IMPORT define and related Makefile magic everywhere in the project. svn path=/trunk/; revision=47992
2012-11-03Manually revert r45669Jakub Zawadzki1-4/+0
svn path=/trunk/; revision=45884
2012-10-20Introduce epan_dissect_run_with_taps() which run dissection with taps.Jakub Zawadzki1-0/+4
unexport tap_queue_init, tap_push_tapped_queue svn path=/trunk/; revision=45670
2012-10-20- Allow reseting edt with new function epan_dissect_reset(),Jakub Zawadzki1-0/+4
- initialize edt once in few places, and later reset it after dissecting (add_packet_to_packet_list), - revert r45667, probably no longer needed. svn path=/trunk/; revision=45669
2012-10-18Move ui-independent object export routines to the common ui directory.Gerald Combs1-8/+8
Implement DICOM, HTTP, and SMB object exports. Rename the GTK+ export files. C++-ize epan/tap.h. Fix an apparent memory leak in eo_save_all_clicked_cb. The Qt dialog has an indeterminate progress bar. I tried adding something similar to the GTK+ dialog but event processing led down a rabbit hole. svn path=/trunk/; revision=45647
2012-10-16Add wtap_pseudo_header union to wtap_pkthdr structure.Jakub Zawadzki1-1/+1
Use pkthdr instead of pseudo_header as argument for dissecting. svn path=/trunk/; revision=45601
2012-06-28Update Free Software Foundation address.Jakub Zawadzki1-1/+1
(COPYING will be updated in next commit) svn path=/trunk/; revision=43536
2011-12-29Add 'extern "C"' wrappers and #include guards to various header files.Gerald Combs1-0/+8
svn path=/trunk/; revision=40321
2011-09-11From Pascal Quantin:Anders Broman1-0/+44
Update of 3GPP RRC and LTE RRC dissectors. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=6333 svn path=/trunk/; revision=38964
2011-06-16Constify a return value, to squelch a compiler warning.Guy Harris1-1/+1
svn path=/trunk/; revision=37680
2010-09-23Revert 34191 and add some casts insteadJeff Morriss1-1/+1
svn path=/trunk/; revision=34193
2010-09-23Use gsize (size_t) in a couple of places to make the Win64 build happy.Jeff Morriss1-2/+2
svn path=/trunk/; revision=34191
2010-09-22When using a custom column, make it possible to select which occurrence to ↵Sake Blok1-1/+1
show if the field has multiple occurrences. svn path=/trunk/; revision=34186
2010-08-29Doxygen changes.Anders Broman1-17/+18
svn path=/trunk/; revision=33990
2010-07-15Move the code to get version information for libraries used byGuy Harris1-1/+13
libwireshark into libwireshark, and call it only in programs linked with libwireshark. That way, programs that don't link with libwireshark don't have to link with libgcrypt or libgnutls solely so that they can say that they're linked with a particular version of libgcrypt or libgnutls. Don't link dumpcap with libgcrypt or libgnutls any more. svn path=/trunk/; revision=33531
2010-04-03 From Yaniv Kaul: constify parametersBill Meier1-5/+5
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4422 From me: Fix a number of instances where the function prototype or the function definition wasn't changed so there was a mismatch thus causing Windows (but not gcc) compilation errors. svn path=/trunk/; revision=32365
2010-04-02Revert SVN #32360 until Windows compilation errors corrected.Bill Meier1-5/+5
svn path=/trunk/; revision=32361
2010-04-02From Yaniv Kaul: constify parametersBill Meier1-5/+5
https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=4422 svn path=/trunk/; revision=32360
2010-01-28Fix various gcc -Wshadow warnings.Bill Meier1-4/+4
svn path=/trunk/; revision=31720
2009-09-08Add an option to col_fill_in() to allow us to disable column expression ↵Kovarththanan Rajaratnam1-1/+1
processing. This is rarely needed. It's only needed when the user right clicks on the packet list view to generate a display filter. svn path=/trunk/; revision=29806
2009-09-08From : Didier GautheronAnders Broman1-1/+1
speed up a little proto_custom_set. https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3972 svn path=/trunk/; revision=29789
2009-09-06Split a bunch of init routines into init() and cleanup(). This allows us to ↵Kovarththanan Rajaratnam1-0/+2
free memory properly on shutdown. This is an initial step. There's still some work to do. svn path=/trunk/; revision=29754
2009-08-25From Didier Gautheron:Anders Broman1-0/+5
move custom col set from proto_tree_set_xxx() to epan_dissect_fill_in_columns(). https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3930 I'v added the new functions to the .h files. svn path=/trunk/; revision=29551
2009-08-13Introduce epan_dissect_init()/epan_dissect_cleanup(). These are used to ↵Kovarththanan Rajaratnam1-0/+8
initialise/cleanup stack allocated 'edt' structures. This should speed up dissection since we avoid some malloc traffic. svn path=/trunk/; revision=29404
2009-08-11TRY_TO_FAKE_THIS_ITEM now fakes FT_PROTOCOL per default. If there are any ↵Kovarththanan Rajaratnam1-0/+4
users (e.g. proto_hier_stats.c, others?) that relies on FT_PROTOCOL nodes being created they'll now need to call the newly introduced epan_dissect_fake_protocols() to disable this optimization. Also make use of TRY_TO_FAKE_THIS_ITEM in proto_tree_add_text_node(), proto_tree_add_none_format() and proto_tree_add_protocol_format(). svn path=/trunk/; revision=29380
2009-07-27From Kovarththanan Rajaratnam:Anders Broman1-1/+1
Only fill in frame_data vals when needed. svn path=/trunk/; revision=29203
2009-02-25Explain conversations and circuits.Guy Harris1-3/+16
svn path=/trunk/; revision=27541
2009-02-15Add a routine to report write errors to the list of failure-reportingGuy Harris1-1/+5
routines handled by epan/report_err.c. Move copy_binary_file() in file.c to epan/filesystem.c, and rename it to copy_file_binary_mode() (to clarify that it *can* copy text files; arguably, *all* files are "binary" unless you're on, say, an IBM 1401 :-)). Have it use the report_err.c routines, so it works in console-mode programs. Clean up some comments while we're at it. svn path=/trunk/; revision=27456
2008-06-23Rename arguments not to collide with function names, to avoid warningsGuy Harris1-2/+2
from -Wshadow, as noted by John Smith. svn path=/trunk/; revision=25541
2007-05-07Updated splash screen for Wireshark that shows the initialisation progress. Graeme Lunt1-2/+5
The splash screen shows a progress bar and a percentage complete - like the progress dialog. As dissectors are initialised and handed off the name is shown. However, the names of plugin dissectors are not shown. The update to the make-dissector-reg shell script has been tested, though I think generally the python version is used. svn path=/trunk/; revision=21716
2007-01-02Add a WIRESHARK_RUN_FROM_BUILD_DIRECTORY environment variable on UN*X;Guy Harris1-1/+1
if set, and if the program isn't running with additional privileges, it'll treat the directory in which the program is found as the data directory. If, on Windows, the version-number subdirectory of {data directory}\plugins doesn't exist (which is assumed to mean that the program is being run from the build directory), or if, on UN*X, WIRESHARK_RUN_FROM_BUILD_DIRECTORY is set, the plugin directory is the "plugins" subdirectory of the data directory, and all subdirectories of that directory are scanned for plugins, as the "plugins" subdirectory of the build directory contains subdirectories for the plugins; this means that if we're running from the build directory, we'll find the plugins we built in the build tree. When generating the wireshark-filter man page, run tshark with WIRESHARK_RUN_FROM_BUILD_DIRECTORY set, so it uses the plugins from the build to generate the list of filters. svn path=/trunk/; revision=20261
2006-06-13new function epan_get_version()Tomas Kukosa1-0/+2
svn path=/trunk/; revision=18450
2006-05-21name changeRonnie Sahlberg1-2/+2
svn path=/trunk/; revision=18197
2005-08-02add some comments, has to be extendedUlf Lamping1-1/+13
svn path=/trunk/; revision=15190