Commit Graph

1022 Commits

Author SHA1 Message Date
Irene Ruengeler 82d8877b37 Capture Options: Add functionality to options and output tab
Change-Id: I4a2116fe5b7ae3997dd7b0f2693aa511f9d52061
Reviewed-on: https://code.wireshark.org/review/3688
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-18 11:25:32 +00:00
Michael Mann 018b84de84 Refactor "common" hostlist/endpoint table functionality.
This is very similar in architecture to the changes made to the Conversation table functionality.  Since all conversations have endpoints/hostlists, the "registered" list is shared for both.

Change-Id: Ie8c6910a68a1b3f27c5b18c4494f49b9404a7b31
Reviewed-on: https://code.wireshark.org/review/3214
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-18 04:24:39 +00:00
Gerald Combs f0e6239191 Qt: Disable main menu items that don't do anything.
The functionality associated with Capture → Capture Filters, Analyze
→ Display Filters, Analyze → Display Filter Macros, and Analyze →
Apply As Column haven't been implemented yet. Disable each menu item
for now so that we don't play tricks on our users.

Follow our current action naming convention. Rename "Apply as Column"
to "Create a Column".

Change-Id: I01901db05adc897d877f6a0a699e3049b0149b4a
Reviewed-on: https://code.wireshark.org/review/3629
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-08-15 18:49:02 +00:00
Alexis La Goutte f64421df3f Qt: Add note about relaunch Wireshark to apply change about language
Change-Id: Ibdc7d6b664d681de990608d689170b02439f0ae7
Reviewed-on: https://code.wireshark.org/review/3559
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-14 04:18:45 +00:00
Gerald Combs e3978271df Windows Qt: Add taskbar progress support
Add support for the taskbar progress indicator on Windows via
QtWinExtras. It is almost as if we're a grown up Windows application.

Change-Id: I378206b49510d4bd08f2437d8e9a1b01bc6f1351
Reviewed-on: https://code.wireshark.org/review/3576
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-08-13 23:00:25 +00:00
Tim Furlong 50c7d8ef96 Use an explicit path for stats_tree_dialog.cpp.
Change the entry for stats_tree_dialog.cpp in ui/qt/QtShark.pro to
have a relative "../qt/" path, so that Qt Creator can find it from its
build...-release temporary directory.

Change-Id: I8fa40e15a7fbb643d5565e216ce92f73afcd4871
Reviewed-on: https://code.wireshark.org/review/2340
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-08-11 21:14:55 +00:00
Alexis La Goutte aaeedcb108 Fix modeline (use Wireshark standard with C comment and no C++ comment)
Fix also some indent (tab->4spaces)

Change-Id: Ieef26591d405c6abe622f9fa26d2a7117af3c259
Reviewed-on: https://code.wireshark.org/review/3548
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-11 11:28:10 +00:00
Graham Bloice 9c799212ac Fix the CMake QT build
The HAVE_PCAP_REMOTE definition is in config.h, so the .h files
that depend on the definition must include it so the MOC compiler
will generate the required code.

Change-Id: Ifc17db4fc3f0e3323726792308e303d28d8bcc7f
Reviewed-on: https://code.wireshark.org/review/3516
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-08-11 01:54:13 +00:00
Alexis La Goutte 020d0f8963 Qt: Fix when build with Qt < 4.8.0
StyleName is not available in Qt < 4.8

Change-Id: Icbfcef7c62b124ce67f1a02ed928a96233ae2d9d
Reviewed-on: https://code.wireshark.org/review/3508
Reviewed-by: Christopher Maynard <Christopher.Maynard@gtech.com>
2014-08-09 14:15:25 +00:00
Alexis La Goutte 6379236e7e Qt: Add missing text to translation
Change-Id: I49d00f73e3e1cf662ead1b01e5d1c0b420c6ccef
Reviewed-on: https://code.wireshark.org/review/3504
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-09 10:53:17 +00:00
Alexis La Goutte 39d919b868 Qt: Make buildbot happy
capture_interfaces_dialog.cpp: In member function ‘void CaptureInterfacesDialog::updateStatistics()’:
capture_interfaces_dialog.cpp:483:100: error: operation on ‘points’ may be undefined [-Werror=sequence-point]
             QList<int> *points = points = ti->data(col_traffic_, Qt::UserRole).value<QList<int> *>();

Change-Id: I63afb0f207142d516403968f6a3e988f8ad61d4d
Reviewed-on: https://code.wireshark.org/review/3491
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-08-08 07:09:02 +00:00
Gerald Combs 4da7570809 Use a QTreeWidget instead of QTableWidget.
Even though Qt's widget naming suggests otherwise, a QTreeWidget is
usually a better choice for tables than QTableWidget. The former gives
you a nice, clean Plain Old Table while the latter gives you something
that looks and acts like a spreadsheet.

In this particular instance using QTreeWidget also gives us the option
of adding sub-items with detailed information. Do so for attached
addresses.

Allow sorting by traffic while we're here. Simplify the column hiding
logic. Make sure the sparkline delegate isn't editable.

Change-Id: Ia36ba2e12c1c0cb86ae5b2154e6afcf6549ae049
Reviewed-on: https://code.wireshark.org/review/3466
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Tested-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-08 05:57:01 +00:00
AndersBroman 1de0203c5f device.remote_opts.sampling_method and device.remote_opts.sampling_param
only exists if we have HAVE_PCAP_SETSAMPLING.

Change-Id: I60b98fd0539d1a8f4fcdd3a079f39f8062a43844
Reviewed-on: https://code.wireshark.org/review/3429
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-05 11:59:55 +00:00
Irene Ruengeler f080b43933 Windows: Manage remote interfaces
Add remote interfaces to capture from a remote host.

Change-Id: I34e31d865304f3c6dd972ab9ab1c23829d564665
Reviewed-on: https://code.wireshark.org/review/3405
Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-05 07:48:45 +00:00
Guy Harris bbda3dd7c1 Write out decode_as entries from the actual dissector tables.
Have a save_decode_as_entries() routine in ui/decode_as_utils.c, that
does all the work of saving the entries by iterating through all the
changed entries with dissector_all_tables_foreach_changed().

When doing so, write out the selector for integral values in decimal, as
older versions of Wireshark only handled decimal values, and some of
those older versions are EOLed and won't be fixed.

Change-Id: I2dab461604524b98e3515867839a4b86c86c5d7b
Reviewed-on: https://code.wireshark.org/review/3426
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-04 23:38:13 +00:00
Gerald Combs fb68a0c6ae Have ConversationDialog retain data between captures.
Remove our tap listeners when the capture file closes. This lets us view
conversation data for multiple capture files.
Change-Id: Ifaa1d2c9d3cd10b1d282aa0070ee2edacc7ce3b0
Reviewed-on: https://code.wireshark.org/review/3376
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-08-03 02:36:10 +00:00
Guy Harris 0734ac385f Rename buffer_ routines to ws_buffer_ to avoid name collisions.
In particular, epan/wslua/lrexlib.c has its own buffer_ routines,
causing some linker warnings on some platforms, as reported in bug
10332.

(Not to be backported to 1.12, as that would change the API and ABI of
libwsutil and libwiretap.  We should also make the buffer_ routines in
epan/wslua/lrexlib.c static, which should also address this problem, but
the name change avoids other potential namespace collisions.)

Change-Id: I1d42c7d1778c7e4c019deb2608d476c52001ce28
Reviewed-on: https://code.wireshark.org/review/3351
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-02 11:01:29 +00:00
Gerald Combs 69d0788875 CompiledFilterOutput dialog fixes and updates.
Apply a layout to the "Compiled Filter Output" dialog. Render the filter
as monospaced text.

Don't add an "expert OK" icon to the list. It doesn't seem to indicate
any sort of status.

Use a "Close" button instead of "OK". According to

http://uxmovement.com/buttons/why-the-ok-button-is-no-longer-okay/

"OK" implies we're going to perform some sort of action.

Add a "Copy" button while we're here.

Change-Id: Ia63f3032916e322fa9f4f2d465140b128b4f8078
Reviewed-on: https://code.wireshark.org/review/3338
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-08-02 00:50:41 +00:00
Guy Harris 435e7c6106 Move the AirPcap stuff into caputils.
Change-Id: I64b45dad36a3ec491aeb9de3439b4fe19b46f9d8
Reviewed-on: https://code.wireshark.org/review/3308
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-01 00:30:03 +00:00
Pascal Quantin dff0382330 Ensure that QT5_BASE_DIR is known by QtShark.pro
Otherwise the call to winqtdeploy will fail if it is not already in the PATH

Change-Id: I74db604a6fd45204bda8d6ac9d9c98c0c12598ec
Reviewed-on: https://code.wireshark.org/review/3218
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Pascal Quantin <pascal.quantin@gmail.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
2014-07-29 13:36:52 +00:00
Martin Kaiser c6a719093f From 竹下 恵 (Megumi Takeshita)
update the japanese translation for the Qt user interface

Change-Id: Ib4a0f6fc1d58cd71310703950c0f1e646b1d74ad
Reviewed-on: https://code.wireshark.org/review/3232
Petri-Dish: Martin Kaiser <wireshark@kaiser.cx>
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Martin Kaiser <wireshark@kaiser.cx>
2014-07-28 21:57:43 +00:00
Michael Mann 31ecdf5b06 Refactor "common" Conversation table functionality.
Refactor (non-GUI) conversation table functionality from gtk/Qt to epan.  Also refactor "common GUI" conversation table functionality.

The idea is to not have to modify the GUI when a dissector adds a new "conversation type"

Change-Id: I11f08d0d7edd631218663ba4b902c4a4c849acda
Reviewed-on: https://code.wireshark.org/review/3113
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-26 20:59:42 +00:00
Guy Harris ab9dc4f554 Don't use capture_interface_list() in this dialog.
Instead, if we have no interfaces in global_capture_opts.all_ifaces, use
the refreshLocalInterfaces() method of the main WiresharkApplication to
try to fetch them; that way, if we do find interfaces, a signal will be
emitted to cause the rest of the UI to reflect their arrival.

Change-Id: I59077ef855127fd6bddaa40126c1835a659ffc30
Reviewed-on: https://code.wireshark.org/review/3202
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-25 22:49:35 +00:00
Guy Harris 9ccf2e04c8 Make Capture -> Refresh Interfaces work.
Add a "refresh the local interfaces" method to WiresharkApplication,
which reloads the interface list and emits the "interface list changed"
signal, and invoke it from the Capture -> Refresh Interfaces menu item.

Change-Id: I9641e4b341eb44d773c556691d8bb9dac776ea9d
Reviewed-on: https://code.wireshark.org/review/3195
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-25 07:45:22 +00:00
Guy Harris 35b4487538 Handle empty interface lists when the list changes.
Don't assume that a change to the interface list is from a non-empty
interface list to a different non-empty interface list.

Change-Id: I94054ca0cf2661704aff1869385aa2155c19677d
Reviewed-on: https://code.wireshark.org/review/3193
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-25 03:00:43 +00:00
Guy Harris f6ce0cdacd Get rid of NO_INTERFACES_FOUND - it's not an error.
It just means "pcap didn't give me any interfaces, and didn't report an
error".  Hopefully, in the future, there will be pcap APIs that
distinguish between the (admittedly unlikely, these days) case of "there
really *are* no interfaces on which *anybody* can capture" and "you
don't have sufficient permission to capture", and we can report the
latter as an error.  (Given that pcap supports more than just "regular
interfaces", though, there are cases where you don't have permission to
capture on those but you have permission to capture raw USB traffic, for
example, so perhaps what's really needed is per-interface indications of
permissions.)

Change-Id: I7b8abb0829e8502f5259c95e8af31655f79d36a1
Reviewed-on: https://code.wireshark.org/review/3169
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-22 23:53:49 +00:00
Guy Harris 4261109e1e Don't return an error string for NO_INTERFACES_FOUND.
Most callers of capture_interface_list() don't expect an error string
for NO_INTERFACES_FOUND, because that's not really an error, it's just a
statement of face (and perhaps an error of 0 should be returned), so
they don't bother freeing the error string, causing a leak.

Instead, have the one place that *did* expect it to return an error
string just put "No interfaces found" itself.

Also, have that place not check for an error string if interfaces *were*
found, as no error code or string is returned in that case.

Change-Id: I9cb8ed7ad22810b23e2251d2833d9b7ab02eec03
Reviewed-on: https://code.wireshark.org/review/3165
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-22 18:51:47 +00:00
Gerald Combs f229aeddd2 Our users are not particpants in a comedy sketch.
In way too many places in the GTK+ code we wait for the user to do
something wrong, leap out from behind the bushes, yell "AHA!", and hit
them in the face with a herring^W error dialog.

We really need to not do that. We also shouldn't carry that behavior
over to the Qt UI.

If the user shouldn't press a button it should be disabled. Do so for
the "Compile BPF" and "Start" buttons.

Change-Id: Iad9c15951d5ae640ea82ca74d5f0c26e88bd2554
Reviewed-on: https://code.wireshark.org/review/3156
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-22 00:43:42 +00:00
Guy Harris fdff1b3b18 Don't connect to non-existent slots.
(Run-time warning, not compile-time error, alas.)

Change-Id: I002ca132d2c7cbc2cfd802438edb4509ff76bcbc
Reviewed-on: https://code.wireshark.org/review/3155
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-22 00:15:56 +00:00
Guy Harris c7a2c89e40 Rename ifListChanged to localInterfaceListChanged.
That better indicates that it reflects changes to the list of local
interfaces on the system, as supplied by libpcap/WinPcap, not to any
other interface list we maintain, such as lists of remote interfaces, or
the list of non-hidden interfaces.

Change-Id: Idf79b365e07f2e3eaa83c105ae9cd7ace54c435e
Reviewed-on: https://code.wireshark.org/review/3154
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-21 23:30:58 +00:00
Gerald Combs 59ef97dd65 [WIP] Add a conversation dialog.
Items are sorted by value.

Move common conversation code to ui/conversation_hash.[ch]. Add a
conversation_type_e enum along with convenience functions for fetching
titles, tap names, etc.

We have a single main dialog instead of a main dialog + individual
protocol dialogs. It de-clutters the statistics menu and results in
simpler code. Conversation type tabs can be added and removed within the
dialog itself. The tab list is sticky and saved with the current profile
when the dialog closes. Data can be copied as CSV or YAML.

Add a FilterAction class and a corresponding filterAction slot to
MainWindow. Use it for the Conversations context menu.

Add an addressResolutionChanged signal and related plumbing.

Get rid of the iterator members in the conversation item struct. Update
the GTK+ code accordingly.

Excercise for the reader:
- Update TShark to use the common hash code.

Ping-Bug: 9231
Ping-Bug: 8703
Ping-Bug: 6727
Change-Id: I8728d771fc5b1a85937bed9d898e53c3ecc3a544
Reviewed-on: https://code.wireshark.org/review/2987
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-07-21 23:19:09 +00:00
Guy Harris d81a34cc24 Have the interface "tree" directly connect to ifListChanged.
Then have the capture interfaces dialog connect only *its* code to
update *its* list of interfaces to ifListChanged, rather than connecting
a routine that then emits interfaceListChanged.

This makes it the responsibility of each widget that displays local
interfaces to connect to the ifListChanged signal.

Change-Id: Iff8e8ca4202c8784eed58c8f05175d986a16baea
Reviewed-on: https://code.wireshark.org/review/3153
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-21 23:15:49 +00:00
Guy Harris 48986f4fb9 Make the Qt version update displays when interfaces appear or disappear.
Change-Id: If1218baaae9dcd93ddb1cea81ac5457f90a57c6c
Reviewed-on: https://code.wireshark.org/review/3152
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-21 19:07:28 +00:00
Joerg Mayer 16daf0c783 Add a warning that not all command line options are implemented
Change-Id: If1b12fed6d04623a4265131a2ff666d4a937d382
Reviewed-on: https://code.wireshark.org/review/3151
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-07-21 18:33:54 +00:00
Guy Harris a3f7d1951d Get rid of #if 0'ed out includes of capture-pcap-util.h.
Change-Id: Ie3678a08ed9b3d46b22e7c59eef74e6e9636ae59
Reviewed-on: https://code.wireshark.org/review/3140
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-20 22:14:26 +00:00
Guy Harris 3a451a8724 Add qtshark_ja_JP.qm to the list of .qm files we distribute.
Change-Id: I95a724c196bd5730af96439f8854169166c59e7a
Reviewed-on: https://code.wireshark.org/review/3135
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-20 19:18:52 +00:00
Martin Kaiser b1532b21be start support for the Japanese language in the Qt version
just the framework and some simple translations

Change-Id: I7653a9c6ab26b391bfe2942d088d233996030576
Reviewed-on: https://code.wireshark.org/review/3134
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Martin Kaiser <wireshark@kaiser.cx>
2014-07-20 18:02:33 +00:00
Gerald Combs e05a884740 Try to make tap operations in the Qt UI more responsive.
Add single-shot timers to ramp up the tap update interval and update
taps when we finish reading the capture file.

Change-Id: Ia1694b47ffd2705b6a06aa50c21e675a64aefeac
Reviewed-on: https://code.wireshark.org/review/3099
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-17 22:18:34 +00:00
Guy Harris f862eaa7c2 "Export PDUs to File" pops up a dialog, so put "..." after it.
Also, capitalize "File" in the GTK+ version (it's already capitalized in
the Qt version).

Change-Id: I27eb27022930b1c0e0321cd1a1446c3b9dc1bd17
Reviewed-on: https://code.wireshark.org/review/3072
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-16 00:56:59 +00:00
Guy Harris 4800894357 Cleanup the "export PDU" common code.
exp_pdu_file_open() isn't used outside ui/tap_export_pdu.c; make it
static.

do_export_pdu() isn't a tap routine, it's called *from* tap routines, so
its last argument doesn't need to be a generic pointer; its last
argument must be a pointer to an exp_pdu_t, so declare it as such.

Clean up comments while we're at it.

Change-Id: Iab51b54a0c272052d7876110a095f2fff66fa2c1
Reviewed-on: https://code.wireshark.org/review/3060
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-15 20:15:59 +00:00
Gerald Combs d1d88f575d Add plumbing for stat commands ("-z ...").
Trigger dialog creation by passing a method name to
QMetaObject::invokeMethod. I'm not entirely sure this is sane but it
seems to work OK. Move getopt processing further down in the main initialization sequence
to more closely match GTK+ and allow for stat command registration.

Change-Id: I5cd5375fa71dbadac69d528b2ba3bb13598dc3f6
Reviewed-on: https://code.wireshark.org/review/2964
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-11 20:52:10 +00:00
Irene Ruengeler c7b45d0a7d GTK Remote Capturing
Move the GTK files necessary for managing the recnet remote host from capture_dlg.c to recent.c in order to use them in QT, too.

Change-Id: I3f3fd31ce928162de08c6db7309ef2a9b1e97760
Reviewed-on: https://code.wireshark.org/review/2955
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-11 04:29:46 +00:00
Guy Harris 9b182b7097 Revert "See if we can get rid of the "lib" in front of "wsutil" on Windows."
This reverts commit c5a50df51f.

Most of the change to remove "lib" seems to work, but the list of libraries to sign appears not to be in the source repository, so I can't make that step work.

Change-Id: I6ead152fc308480d02266b0f3f0caaa873caf6d2
Reviewed-on: https://code.wireshark.org/review/2973
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-10 00:59:31 +00:00
Guy Harris c5a50df51f See if we can get rid of the "lib" in front of "wsutil" on Windows.
"libXXX" is a UN*X convention; see whether we can do without it on
Windows.

Change-Id: I03a377ed5121a8dff7a53203b34e441abffcbb85
Reviewed-on: https://code.wireshark.org/review/2968
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-09 23:23:47 +00:00
Gerald Combs bb9a25177c Add back actionFileQuit.
Change-Id: I76cfe038c02a869fb71dc74b7c55fd932e2ccbb2
Reviewed-on: https://code.wireshark.org/review/2967
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-09 22:05:51 +00:00
Gerald Combs da3634a01f Fix a "recent items" crash.
Use a QMutableListIterator instead of a foreach loop so that we can
safely remove items from a list.

While we're here, make sure that RecentFileStatus threads use a
Qt::QueuedConnection when emitting signals across threads and try to
isolate the filename string.

Change-Id: I3fbb65a1727133f4557026decab5084a3faec2d4
Reviewed-on: https://code.wireshark.org/review/2966
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-09 21:39:41 +00:00
Evan Huus 72e15f22ea Merge capture->interfaces and capture->options
Change-Id: I0a2976da97bd777abbf4701915551d9d481b0a13
Reviewed-on: https://code.wireshark.org/review/2785
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-09 12:34:45 +00:00
Alexis La Goutte 5f0fd977d1 Wireshark Qt: Fix recent (update the list of file when quit Wireshark)
Change-Id: I2fac5178fca9675ffb70a942d094335323358d22
Reviewed-on: https://code.wireshark.org/review/2825
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-09 04:34:53 +00:00
Gerald Combs 858558e619 Update README.qt and add todo items.
Change-Id: I69c080253cf7e861c575573e74a66b83e014cbb0
Reviewed-on: https://code.wireshark.org/review/2925
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-07 22:12:09 +00:00
Gerald Combs 4cdd17a59d Qt: Cache packet list column strings.
For each displayed packet list row, save a copy of or a pointer to
column strings similar to ui/gtk/packet_list_store.c. This lets us call
epan_dissect_run only once per row.

Bug: 9511
Change-Id: I17e8ebeb5ed70518c9047413c3b2a46f01e904ef
Reviewed-on: https://code.wireshark.org/review/2752
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-07 06:24:23 +00:00
Alexis La Goutte 68daa668e4 Fix Dead Store (Dead assignement/Dead increment) warning found by Clang
Change-Id: I9946e55ee33ccbf57c6b268f725f5b1a537b61a9
Reviewed-on: https://code.wireshark.org/review/2897
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-06 18:31:20 +00:00
AndersBroman 34d09f770c Add missing /
Change-Id: I84758200bce592f84547bff84f02d743327baa03
Reviewed-on: https://code.wireshark.org/review/2848
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-04 12:07:38 +00:00
Guy Harris 17995db2ff Fix the no-libpcap build.
Change-Id: I2443ab22d423508641ac199262238e5fbafc95df
Reviewed-on: https://code.wireshark.org/review/2843
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-04 08:01:41 +00:00
Guy Harris 9e6487f247 Move utility routines for capturing into a libcaputils static library.
Some of those routines are used only in dumpcap; others are used in
TShark and Wireshark as well.

Change-Id: I9d92483f2fcff57a7d8b6bf6bdf2870505d19fb7
Reviewed-on: https://code.wireshark.org/review/2841
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-04 07:25:26 +00:00
Evan Huus c5643a3d25 Remove accidental trailing \
Change-Id: I84e6aa71e31528b2949e68f0f07778fb9e26379e
Reviewed-on: https://code.wireshark.org/review/2839
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-04 03:13:09 +00:00
Alexis La Goutte fb4ee24ec6 Sort by name list of file
fix also indent (use spaces)

Change-Id: I06234936c3128f7aa21a345415d7e420135dd601
Reviewed-on: https://code.wireshark.org/review/2824
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-04 02:22:45 +00:00
Guy Harris 66b02c75ed Include <sys/capaibility.h> to get _LINUX_CAPABILITY_VERSION defined.
It's no longer used in version_info.c, but is used in the main source
files of TShark and Wireshark (it's already included in dumpcap).

Change-Id: I2169a2bbed678baf26fc8711d7c13d95cce3ee2a
Reviewed-on: https://code.wireshark.org/review/2819
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 15:22:45 +00:00
Guy Harris 1692c520ef Include "capture-pcap-util.h" even if we don't have libpcap.
The routines to get libpcap version information just say "no pcap here"
if we don't have it, so they're called regardless of whether we were
compiled with it.

Change-Id: I4e58cce83f7c0e36aa6ef9b40ec7075732402f3b
Reviewed-on: https://code.wireshark.org/review/2800
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 09:16:39 +00:00
Guy Harris b4ce352539 Make --help and --version information a bit more uniform.
Have --version print the version number, the copyright information, the
"compiled with" information, the "running on/with" information, and the
compiler information.

Have --help print the version number, a one-line summary of what the
program does, a reference to http://www.wireshark.org for more
information, a Usage: line, and a list of command-line options.

This means programs doing that don't need to include version.h; that's
left up to get_ws_vcs_version_info() to do.

Change-Id: Idac641bc10e4dfd04c9914d379b3a3e0cc5ca8cb
Reviewed-on: https://code.wireshark.org/review/2794
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 08:46:01 +00:00
Guy Harris 6b3391c60a Regularize the help output of programs.
Only print to the standard output, and only give the version
information, if a "print help" command-line option is specified.
Otherwise, leave out the version information, and print to the standard
error.

Leave out the copyright information; it's extra cruft, and

	http://www.gnu.org/prep/standards/html_node/_002d_002dhelp.html

doesn't say anything about it (and bash, at least, doesn't print it).

Change-Id: Ic5029ccf96e096453f3bd38383cc2dd355542e8a
Reviewed-on: https://code.wireshark.org/review/2789
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 02:29:54 +00:00
Guy Harris 66c342ed59 Regularize the first line of version output.
For Wireshark, say "Wireshark", not "wireshark".

For other programs, put "(Wireshark)" after the program name, as per

	http://www.gnu.org/prep/standards/html_node/_002d_002dversion.html

("If the program is a subsidiary part of a larger package, mention the
package name in parentheses, like this").

Change-Id: I68558f64cfa6ee4423e42f3d6b120633ef1b2716
Reviewed-on: https://code.wireshark.org/review/2788
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-03 02:03:35 +00:00
Irene Ruengeler f3c5f14bc4 Manage Interfaces
- Add dialog to manage interfaces
- Add and delete pipes
- Hide local interfaces

Change-Id: I08323c306c2ea736f99e57c28e2fe3170a0c2216
Reviewed-on: https://code.wireshark.org/review/2613
Tested-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michael Tüxen <tuexen@wireshark.org>
2014-07-02 20:56:37 +00:00
Graham Bloice e1e7dd0cfd Fix the QT build on Qt 5.3 or later to use the windeployqt tool
to copy the rquired Qt files into the runtime directory

Qt 5.2 is broken as windeployqt doesn't take the required --release flag

Also fix the passing of GCC_DLL and GPGERROR_DLL into config.pri so
that the Qt build copies the required files instead of the entire
gnutls bin dir twice (the variables expanded to nothing).

Add support for autodetection of Qt 5.3.0 with msvc2013

Change-Id: I1e9c70a5ff5d1fdfdce88ba15d324f1899c8129c
Reviewed-on: https://code.wireshark.org/review/2734
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-01 19:16:52 +00:00
Guy Harris 9485392687 Add a comment that appears in other programs.
Change-Id: Ife885779d339fbb706c9d6cfd931833afba25277
Reviewed-on: https://code.wireshark.org/review/2742
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-01 10:06:11 +00:00
Guy Harris 62fa030a03 Do startup things in an order more like that of gtkshark.
Get credential information and drop privileges *very* early on.  Get the
pathname of the executable right after that, then initialize the 802.11
decryption, then, on Windows, load WinPcap and, if available, AirPcap.
*Then* we can get the version information and set the crash information.

We should drop privileges as early as possible.

We have to load WinPcap and AirPcap before getting the run-time
information, as the run-time information includes the *pcap versions.

Change-Id: Ib40e5a848cc7f42fcb424faa15a91868eaa0b9a4
Reviewed-on: https://code.wireshark.org/review/2733
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 22:51:55 +00:00
Guy Harris c1d2b29d01 Move filters.[ch] to libui.
Change-Id: I32f04016498dfe8f54b0480f30a84ffe5ef7868f
Reviewed-on: https://code.wireshark.org/review/2727
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 21:47:58 +00:00
Guy Harris 60d0faf9c9 Move proto_hier_stats.[ch] to libui.
Change-Id: Ib7c0617d88bf92cad0ac877176001d29960f1cd8
Reviewed-on: https://code.wireshark.org/review/2725
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 21:08:53 +00:00
Guy Harris ad1391aa4e Move capture.[ch] to libui.
Change-Id: I86e7e781cc9e14abab0374a18b95438529b046f0
Reviewed-on: https://code.wireshark.org/review/2711
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 05:38:57 +00:00
Guy Harris b33512b704 Move capture_session.h to capchild; what it declares is defined there.
Change-Id: I8b1407839390b7ac0b45bf6f583c1a509073f002
Reviewed-on: https://code.wireshark.org/review/2709
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 05:09:31 +00:00
Guy Harris df5833723c Move capture_ui_utils.[ch] to libui.
Change-Id: Id0f3d4d60a1acc7aa64fd3737b8f16df5bca4e5a
Reviewed-on: https://code.wireshark.org/review/2708
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 01:36:56 +00:00
Guy Harris fe8661a767 clopts_common.c is now part of wsutil.
Change-Id: I474443567e83cab83e4859a4d89a19a8904e08f8
Reviewed-on: https://code.wireshark.org/review/2707
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30 00:04:02 +00:00
Guy Harris fe42762f23 Move some more stuff into wsutil.
Move the routines to parse numerical command-line arguments there.

Make cmdarg_err() and cmdarg_err_cont() routines in wsutil that just
call routines specified by a call to cmdarg_err_init(), and have
programs supply the appropriate routines to it.

Change-Id: Ic24fc758c0e647f4ff49eb91673529bcb9587b01
Reviewed-on: https://code.wireshark.org/review/2704
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-29 23:03:24 +00:00
David Ameiss e1a8c9599f Standardize the names of, and document, the taps and heuristic dissector tables made avaialble by these dissectors.
Change-Id: If3a143eb9546c9de63cd32b2347000b09e0e3c93
Reviewed-on: https://code.wireshark.org/review/2688
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-06-29 00:03:35 +00:00
Balint Reczey a67b7f5b5c Use GQueue for generating statistics
This makes reversing the list back and forth to keep adding data
at O(n) complexity obsolete.

Bug: 9696

Change-Id: Ice77328b8f6c5bf72bbfcfd82e08d09d4f986d3f
Reviewed-on: https://code.wireshark.org/review/2571
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
Tested-by: Balint Reczey <balint@balintreczey.hu>
2014-06-27 08:55:11 +00:00
Irene Ruengeler 3f43688eb3 List elided_label.h only once.
Change-Id: Ibd00e55fb31d571b0b1f6f1c4595a35835e22d4d
Reviewed-on: https://code.wireshark.org/review/2641
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-25 08:20:20 +00:00
Guy Harris 4105c48df8 Another capchild.lib -> libcapchild.lib.
Change-Id: I4c7750f05c831f12d0d34e2edf0d982d501d90d8
Reviewed-on: https://code.wireshark.org/review/2610
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-24 03:54:20 +00:00
Guy Harris 243fc405d9 Add libcapchild, remove the files that are now in it.
Change-Id: I79c16bbea47e507859c904e4142fc06fa6bfc127
Reviewed-on: https://code.wireshark.org/review/2606
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-24 02:13:03 +00:00
Guy Harris adf6b1a8df For capchild headers, include <capchild/XXX.h>.
Change-Id: I780c69ee637dcd9846756a2e2d6a35baf02d826d
Reviewed-on: https://code.wireshark.org/review/2594
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-24 00:28:08 +00:00
Guy Harris 9cdbb25760 Don't report the run-time version of pcap if we weren't built with pcap.
Change-Id: Ib879290b72938cc999e00b6e044f917161ba5801
Reviewed-on: https://code.wireshark.org/review/2589
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-23 22:49:40 +00:00
Guy Harris 1d92195de8 Have individual programs get libpcap and libz version info.
That way, the code that constructs the runtime version string doesn't
itself have to call libpcap and libz, and could be usable in programs
that don't call them.

While we're at it, add "with" to the run-time version information for
GnuTLS and libgcrypt, to match the compile-time version information, and
add the version information from libwireshark to TShark.

Change-Id: I3726a027d032270b032292da9314c1cec535dcd2
Reviewed-on: https://code.wireshark.org/review/2587
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-23 21:56:42 +00:00
Michal Labedzki 59e860cf2f [WIP] qt: Add support for Polish language
Change-Id: Ib63937e741b737f171a9b383a9cbabb55dfdd8ef
Reviewed-on: https://code.wireshark.org/review/2553
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-06-23 19:10:21 +00:00
Guy Harris c46329c27b Add a routine to return a version string including VCS information.
Add a routine get_ws_vcs_version_info() that, for builds from a tree
checked out from Wireshark's version control system, returns a string
that includes both the Wireshark version number and an indication of
what particular VCS version was checked out, and just returns
Wireshark's version number for other builds.

Use that routine rather than manually gluing VERSION and the Git version
number together.

("vcs", not "git", just in case we do something bizarre or mercurial
some day. :-))

Change-Id: Ie5c6dc83b9d3f56655eaef30fec3ec9916b6320d
Reviewed-on: https://code.wireshark.org/review/2529
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-22 01:06:25 +00:00
Guy Harris 8960430ce7 cfutils.c is now part of libwsutils.
Change-Id: I86ab5f5890a10cc8475f5e9bee4c4f7c89dfb8bc
Reviewed-on: https://code.wireshark.org/review/2521
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-21 19:45:54 +00:00
Guy Harris 43443af0ac Move get_copyright_info() to wsutil.
Change-Id: I75c1c747cd2b4a9845c659636582d54b2caecf1a
Reviewed-on: https://code.wireshark.org/review/2510
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-21 17:33:05 +00:00
Guy Harris 235d3a2a3a Fix build without pcap.
The files that use LONGOPT_CAPTURE_COMMON and OPTSTRING_CAPTURE_COMMON
include capture_opts.h unconditionally, so there's no need to define
them if we don't have pcap.  In addition, we want the capture options
"available" even if we don't have pcap, so we can tell the user "you're
using a version of *shark without pcap, but you gave a capture option".

Change-Id: I0bd3893b73d3d903610d0bc6cacb60bfb37096f4
Reviewed-on: https://code.wireshark.org/review/2503
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 23:26:46 +00:00
Guy Harris b3885a9387 Fix builds without pcap.
Change-Id: I6c67f9ea9d115a8396af0904ef9a73d2c528dcaa
Reviewed-on: https://code.wireshark.org/review/2498
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:51:34 +00:00
Guy Harris cc4710ac5f Also define LONGOPT_CAPTURE_COMMON as nothing if we don't have pcap.
While we're at it, simplify the #ifdefs and #defines in capture_opts.h -
don't do the same tests twice.

Change-Id: I2079167f31789470ef77120054d769d5914745e3
Reviewed-on: https://code.wireshark.org/review/2496
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:39:08 +00:00
Guy Harris 9a50b0f20b Define OPTSTRING_CAPTURE_COMMON as nothing if we don't have pcap.
No capturing, no capture options.

Change-Id: I0023184b9c358d5876f19a098590f34d641c8649
Reviewed-on: https://code.wireshark.org/review/2493
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:14:27 +00:00
Guy Harris 26bbee3fad Add some long options for capture short options.
The names match tcpdump trunk's names for the corresponding options.

Also have capture_opts.h provide a #define for the part of the short
option string that corresponds to the capture short options that all our
programs that take capture short options take (those are largely the
ones we have in common with tcpdump).

Change-Id: Ia209425959c801725850b56a7d63441ee99b5001
Reviewed-on: https://code.wireshark.org/review/2492
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 21:00:16 +00:00
Guy Harris 312ed10900 Add --help and --version long options.
Also, make the convention for long-only options be that their
case-statement values start at 128, so they avoid colliding with any
ASCII code points, including control characters.

Make the tables of long options "static const" while we're at it, and
get rid of unnecessary casts.

Change-Id: I55702a85e9bc078b1cd0f2803ebb68a710405bab
Reviewed-on: https://code.wireshark.org/review/2491
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-20 19:19:47 +00:00
Pascal Quantin bcff3c57cc Add the ability to dynamically add a new protocol to export PDU dialog box
Change-Id: I83012cc963d514982e40010e837e11a6fcf1bc3e
Reviewed-on: https://code.wireshark.org/review/2423
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-19 06:48:32 +00:00
Gerald Combs ed38e69235 Make sure we hide columns for live captures as well.
Remove some dependencies on having an open capture file.

Change-Id: Iad5d03e0a45ed31c83781861ef1ed7fdeb92e4a5
Reviewed-on: https://code.wireshark.org/review/2352
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-06-17 22:39:09 +00:00
Tim Furlong 74fec38529 Get QtShark building on Win7 with Qt 5.3.0 using Qt Creator.
Several header file references in .ui files needed to be changed to not
be global, and the path to stats_tree_dialog.ui needed a "../qt" path
prepended to be found from the build...-Release directory.

Change-Id: I51c0bb15eed706f483085020ce2b3cea3c1cdc95
Reviewed-on: https://code.wireshark.org/review/2281
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-17 21:02:18 +00:00
Alexis La Goutte 11243e3977 Qt: fix loading of language translation
But need always restart to apply change...

Based on http://qt-project.org/wiki/How_to_create_a_multi_language_application


Change-Id: I0f95afb68aa5b125e0707b0af1ce096dab9c29e4
Reviewed-on: https://code.wireshark.org/review/2286
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-06-17 00:08:51 +00:00
Gerald Combs 6c79a718ab Column visibility fixups.
Move visibility to its own method and call it when we show ourselves and
when we thaw.

Change-Id: I936cd33e5ccabddb32061ea347a465ac12f1be87
Reviewed-on: https://code.wireshark.org/review/2289
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-06-16 23:56:39 +00:00
Jeff Morriss f113306e0e More Python-bindings removal.
Change-Id: I4d82175781e65c73179f4c8e737a7900cb050bce
Reviewed-on: https://code.wireshark.org/review/2283
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-06-16 23:14:05 +00:00
Gerald Combs 7f6ebece15 Hide hidden columns in Qt.
Change-Id: I1da0d95c606eb2f17c03874f20d38b9a7ba9e8ee
Reviewed-on: https://code.wireshark.org/review/2278
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-06-16 21:31:12 +00:00
Alexis La Goutte ac5479b4b8 Fix Dead Store (Dead assignement/Dead increment) warning found by Clang
Change-Id: I781c7eec381d3296d15e666385f549e44f62e3f1
Reviewed-on: https://code.wireshark.org/review/2226
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-16 06:48:33 +00:00
Irene Ruengeler e14357032f Define INET6 for all platforms.
Show the addresses as a tooltip in capture interfaces.

Change-Id: I911784e09ed9479229a7d6f8a7f1476e2e1e6224
Reviewed-on: https://code.wireshark.org/review/2155
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-06-14 13:27:10 +00:00
Guy Harris a972e8f2b3 Try to fix a used-but-not-set warning.
I'm guessing that GCC is complaining because "device" isn't guaranteed
to be set (if there are no interfaces, the body of the loop will never
be executed), so do with the list of link-layer header types what's done
for the buffer size and snapshot length.

But should the column-setting code be executed if the interface isn't
found?

Change-Id: I8c365a482b8af44cdd1c1a7f41ca611141387c86
Reviewed-on: https://code.wireshark.org/review/2180
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-12 18:55:17 +00:00
Irene Ruengeler df8c4bf264 Capture Interfaces Dialog:
- allow to change the interface options in the table
- save the options to preferences when the dialog is left
- add a field for setting a capture filter for all selected interfaces
- add a "Compile BPF" button and a window to show the compiled filter output
- try to address Alexis' and Evan's comments

Change-Id: Ic1272e29183ec80e2d2f4b3e494c79dabe2c3b6f
Reviewed-on: https://code.wireshark.org/review/1946
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-12 05:54:59 +00:00
Alexis La Goutte 60ce7bce5f Add TFTP export for Qt too
Change-Id: I056829d48aa49eb106c76c8f572c0f8b6e1a4245
Reviewed-on: https://code.wireshark.org/review/1916
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-06 15:49:44 +00:00
Pascal Quantin ad7b5381ac Upgrade Windows builds to GnuTLS 3.1.22 and Gcrypt 1.6.0
Change-Id: I7650a3ec31120ac5e7954f4c1ca985ad55d189b4
Reviewed-on: https://code.wireshark.org/review/1978
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-06-06 15:33:01 +00:00
Alexis La Goutte 9389d789a4 Qt: Export Object
* Fix indent (remove tabs)
* Add title to the window

Change-Id: I454046e47fa17969c710fa8dec4fac8cb7dbf22f
Reviewed-on: https://code.wireshark.org/review/1917
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-06-03 15:07:16 +00:00
ruengeler a192e4792d Use Q_UNUSED instead of _U_
Change-Id: I19732f097b1238159b634e32ee13fe6ae3f1883d
Reviewed-on: https://code.wireshark.org/review/1849
Reviewed-by: Michael Tüxen <tuexen@wireshark.org>
2014-05-28 17:46:30 +00:00
ruengeler 9d77e7cff8 QIcon is not needed.
Change-Id: I07207177e97e22bb8810226818b2280db5f5055e
Reviewed-on: https://code.wireshark.org/review/1836
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-28 12:36:12 +00:00
Guy Harris 318cf8a678 Add support for dissecting non-packet records.
Add a dissector table indexed by the file type, and, for the
file-type-specific records, have the frame dissector skip the usual
pseudo-header processing, as the pseudo-header has a file-type-specific
record subtype in it, and call the dissector for that file type's
records.

Change-Id: Ibe97cf6340ffb0dabc08f355891bc346391b91f9
Reviewed-on: https://code.wireshark.org/review/1782
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-25 00:05:07 +00:00
Guy Harris 6db77b000f Allow wtap_read() and wtap_seek_read() to return records other than packets.
Add a "record type" field to "struct wtap_pkthdr"; currently, it can be
REC_TYPE_PACKET, for a record containing a packet, or
REC_TYPE_FILE_TYPE_SPECIFIC, for records containing file-type-specific
data.

Modify code that reads packets to be able to handle non-packet records,
even if that just means ignoring them.

Rename some routines to indicate that they handle more than just
packets.

We don't yet have any libwiretap code that supplies records other than
REC_TYPE_PACKET or that supporting writing records other than
REC_TYPE_PACKET, or any code to support plugins for handling
REC_TYPE_FILE_TYPE_SPECIFIC records; this is just the first step for bug
8590.

Change-Id: Idb40b78f17c2c3aea72031bcd252abf9bc11c813
Reviewed-on: https://code.wireshark.org/review/1773
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-24 18:31:25 +00:00
Guy Harris a344c9736e Revert "Allow wtap_read() and wtap_seek_read() to return non-packet records."
This reverts commit c0c480d08c.

A better way to do this is to have the record type be part of struct wtap_pkthdr; that keeps the metadata for the record together and requires fewer API changes.  That is in-progress.

Change-Id: Ic558f163a48e2c6d0df7f55e81a35a5e24b53bc6
Reviewed-on: https://code.wireshark.org/review/1741
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 10:50:10 +00:00
Guy Harris c0c480d08c Allow wtap_read() and wtap_seek_read() to return non-packet records.
This is the first step towards implementing the mechanisms requestd in
bug 8590; currently, we don't return any records other than packet
records from libwiretap, and just ignore non-packet records in the rest
of Wireshark, but this at least gets the ball rolling.

Change-Id: I34a45b54dd361f69fdad1a758d8ca4f42d67d574
Reviewed-on: https://code.wireshark.org/review/1736
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 03:02:32 +00:00
Michael Mann e5353bf119 Use g_ alloced memory (instead of emem) when printing fields. emem shouldn't be used for GUI functions anyway.
emem was exposed because of its memory limits trying to output PDML for a very large byte field in a capture file.

When converting from proto_construct_match_selected_string to fvalue_to_string_repr remember proto_construct_match_selected_string includes fieldname + value, not just value

bug:10081
Change-Id: I4fc6ea7fd1f63cff410207c8b30562771af40ada
Reviewed-on: https://code.wireshark.org/review/1578
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-05-19 01:46:55 +00:00
Evan Huus 25ba4a2a44 Guard closing capture window with ifdef.
That variable is only defined if we HAVE_LIBPCAP. Should fix OSX10.5 buildbot.

Change-Id: I0bafc48955ef4af3c0b8d9d7a35b1e8b27577d31
Reviewed-on: https://code.wireshark.org/review/1669
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-05-17 12:07:45 +00:00
ruengeler 53eeff6c91 Do not leave the Options Interfaces Dialog open, when the Main Window is closed.
Change-Id: Ifd4fb88ceff24561131fad1d72531889e323f5ac
Reviewed-on: https://code.wireshark.org/review/1651
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-15 11:58:57 +00:00
ruengeler 2828bf7777 The filter string can only be valid, if an interface is selected.
Change-Id: I578f6b46d5e2631c6315eb0a8b6141ba93ee21bb
Reviewed-on: https://code.wireshark.org/review/1631
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-14 10:46:15 +00:00
Alexis La Goutte 2c00d66fb7 Use pre-scan command line parameters with double while(opt=getopt...)
Don't need launch "Qt" for some console only parameters (-h -v ...)

Based on GTK+ code

Change-Id: I1a810e394088959aefbbb39fb88836591a8b2367
Reviewed-on: https://code.wireshark.org/review/1311
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-13 16:41:30 +00:00
AndersBroman 3157bf6ba5 isprint() -> g_ascii_isprint()
Change-Id: Ia586ef8ce500d5fc7578c52014206fa7a7eaea41
Reviewed-on: https://code.wireshark.org/review/1624
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-13 16:14:07 +00:00
Gerald Combs 9803122c8e Ignore SIGPIPE on systems that have it.
According to the GTK+ docs, gtk_init calls "signal(SIGPIPE, SIG_IGN)" at
startup. Replicate that behavior here, otherwise we tend to terminate
unexpectedly.

Change-Id: Ia017402755d647e6050af40deacef6765eea8694
Reviewed-on: https://code.wireshark.org/review/1614
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Tested-by: Gerald Combs <gerald@wireshark.org>
2014-05-12 17:05:06 +00:00
Pascal Quantin 98f608cc0d Identify client/server by their IP address and port number in follow streams dialog box
This allows to properly identify hosts that use the same port number

Change-Id: I93bf5b53e4df1d339fb06b372b90f88fce6785a0
Reviewed-on: https://code.wireshark.org/review/1588
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-05-11 17:01:54 +00:00
Pascal Quantin e2eea89698 Small fixes to Follow Streams dialog box:
- get the right IPv6 client address
- display the right client to server string for UDP/SSL in Qt port

Change-Id: I399cc38b8a32321198deccdd8e2ecd05b54e14db
Reviewed-on: https://code.wireshark.org/review/1586
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-05-11 16:47:18 +00:00
Evan Huus 877942c3fd Revert "Use g_ alloced memory (instead of emem) when printing fields. emem shouldn't be used for GUI functions."
It's causing a few different test failures - I've tracked down at least one of them, but the others are weirder and will require more digging.

This reverts commit 9edba650d1.

Change-Id: I897f8cf1cfbb2a189b2054e5002f59757befa47f
Reviewed-on: https://code.wireshark.org/review/1575
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-05-09 15:19:59 +00:00
Guy Harris a1b1c8bed5 Revert "Refactor Wiretap"
This reverts commit 1abeb277f5.

This isn't building, and looks as if it requires significant work to fix.

Change-Id: I622b1bb243e353e874883a302ab419532b7601f2
Reviewed-on: https://code.wireshark.org/review/1568
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-09 05:21:01 +00:00
Michael Mann 9edba650d1 Use g_ alloced memory (instead of emem) when printing fields. emem shouldn't be used for GUI functions.
emem was exposed because of its memory limits trying to output PDML for a very large byte field in a capture file.

bug:10081
Change-Id: I6346dfdfb5f6381e16761a99291c4be7851185d9
Reviewed-on: https://code.wireshark.org/review/1566
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-09 04:31:10 +00:00
Michael Mann 1abeb277f5 Refactor Wiretap
Start of refactoring Wiretap and breaking structures down into "generally useful fields for dissection" and "capture specific". Since this in intended as a "base" for Wiretap and Filetap, the "wft" prefix is used for "common" functionality.

The "architectural" changes can be found in cfile.h, wtap.h, wtap-int.h and (new file) wftap-int.h. Most of the other (painstaking) changes were really just the result of compiling those new architecture changes.

bug:9607
Change-Id: Ife858a61760d7a8a03be073546c0e7e582cab2ae
Reviewed-on: https://code.wireshark.org/review/1485
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-09 03:04:39 +00:00
David Ameiss bdfe17f12e GUI modules for LBM aka 29West dissectors.
bug:9718
Change-Id: I05330d8a2475ad0d238723d444f3d98bdbd7be39
Reviewed-on: https://code.wireshark.org/review/1041
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-04 02:55:45 +00:00
Stig Bjørlykke bd38b3152d Support out-of-source checkapi
Always call $(top_srcdir)/tools/checkAPIs.pl with -sourcedir=$(srcdir)
from Makefile.am to allow out-of-source 'make checkapi'.

Change-Id: I60d7e0079984a8ededdacf4517a0738486fa7973
Reviewed-on: https://code.wireshark.org/review/1294
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-04-25 04:23:46 +00:00
Alexis La Goutte 50ed98ea33 Fix warning: extra ‘;’ [-Wpedantic]
Change-Id: Ib2f52d28dce0f64bf56ff0df7b4ed7d091670620
Reviewed-on: https://code.wireshark.org/review/1319
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-24 06:48:56 +00:00
Alexis La Goutte 5ab53e6079 Fix typo in comment (parameterts => parameter)
Change-Id: Ie1fefc27d249929f0f5108b0757768e7e23a9dbe
Reviewed-on: https://code.wireshark.org/review/1310
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-04-23 21:34:45 +00:00
Guy Harris 97869f2dec More name changes.
Add ep_ to routines that may return ephemeral strings.

Change "get_XXX" to "XXX_to_display" if the routine returns a formatted
string if it can't get a name.

Change-Id: Ia0e82784349752cf4285bf82788316c9588fdd88
Reviewed-on: https://code.wireshark.org/review/1217
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-19 19:30:17 +00:00
Guy Harris c8f7e16b57 Some routine name changes.
"get_addr_name()" -> "ep_address_to_display()", to 1) indicate that it
returns a string with ephemeral scope and 2) indicate that it maps an
address to a "displayable" form - a name if possible, an address string
if not.

"se_get_addr_name()" -> "get_addr_name()", to indicate that its strings
have the same scope as "get_ether_name()", "get_hostname()", and
"get_hostname6()".

Change-Id: If2ab776395c7a4a163fef031d92b7757b5d23838
Reviewed-on: https://code.wireshark.org/review/1216
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-19 19:07:06 +00:00
Alexis La Goutte 5c5a24f48a Update French translation
Change-Id: If552907a2eb0828198e912fa5c2628efa7190f20
Reviewed-on: https://code.wireshark.org/review/1119
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-15 14:31:24 +00:00
Gerald Combs 9838ab902e Adjust path width for OS X & Linux.
Change-Id: Icc51e8c3c93f78cbfa0a0aeda3552ceb4c82803d
Reviewed-on: https://code.wireshark.org/review/1122
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-04-14 16:09:05 +00:00
Alexis La Goutte 9a9ca0ab3d lrelease / lupdate translation files
Change-Id: I2962614ad9d4bd5a263f50e827705133c6c65d9c
Reviewed-on: https://code.wireshark.org/review/1110
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 13:50:38 +00:00
Alexis La Goutte eef5e68177 Fix typo (double at...)
Change-Id: If095b9d01817e4345ae588020cdc3332709c18d0
Reviewed-on: https://code.wireshark.org/review/1109
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 13:50:22 +00:00
Alexis La Goutte c4626a247c Fix typo (Link size => Link type) in Qt Summary window
Change-Id: I78844161e19eaa88a62417f492ac5e439c6bbac0
Reviewed-on: https://code.wireshark.org/review/1108
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 13:50:10 +00:00
Martin Kaiser 3aa48c8ad6 path is used only for libsmi and geoip
fix a compile error when they're both unused

Change-Id: I23b341bc02624e3e56320818056ac3cc8cd65b99
Reviewed-on: https://code.wireshark.org/review/1107
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
2014-04-14 13:35:06 +00:00
Alexis La Goutte 92b501303b Enhance translation (rename also pixel => Pixel to avoid similar string...)
Change-Id: Ic2e0ca99382208c13ea2c71c11684c43b34b9988
Reviewed-on: https://code.wireshark.org/review/1099
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 10:35:58 +00:00
Alexis La Goutte bf515f5990 lupdate / lrelease translation file...
Change-Id: I6d93828ece6e62e4885c31d6d4429c652ead9389
Reviewed-on: https://code.wireshark.org/review/1090
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 06:24:16 +00:00
Alexis La Goutte fca3746365 Enhance translation (rename toolTip to avoid similar string...)
Change-Id: I66a17871829a769fe6ffecb2becbb5f4cc7fa078
Reviewed-on: https://code.wireshark.org/review/1089
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-04-14 05:18:43 +00:00
Gerald Combs 63ed4745a2 Replace QTableWidgets with QLabels + HTML tables.
This lets the user select and copy the folder and plugin data as text.
Add clickable local filesystem URLs while we're at it.

(I suspect that you shouldn't use QTableWidgets unless you're creating a
spreadsheet.)

Change-Id: I45650bd4f4b6215824a4ed70ec80698d0805baba
Reviewed-on: https://code.wireshark.org/review/1064
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-04-13 18:32:55 +00:00
Guy Harris cb16dff992 Get rid of more tvb_get_nstringz* calls.
Add an FT_STRINGZPAD type, for null-padded strings (typically
fixed-length fields, where the string can be up to the length of the
field, and is null-padded if it's shorter than that), and use it.  Use
IS_FT_STRING() in more cases, so that less code needs to know what types
are string types.

Add a tvb_get_stringzpad() routine, which gets null-padded strings.
Currently, it does the same thing that tvb_get_string_enc() does, but
that might change if we don't store string values as null-terminated
strings.

Change-Id: I46f56e130de8f419a19b56ded914e24cc7518a66
Reviewed-on: https://code.wireshark.org/review/1082
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-12 22:27:22 +00:00
Alexis La Goutte 725c2b3354 Fix called C++ object pointer is null found by Clang Analyzer
Change-Id: I7d142ed60af8bb776ea732bf9ef94ad92bc23d70
Reviewed-on: https://code.wireshark.org/review/1061
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-04-10 23:41:06 +00:00
Gerald Combs a5cb72fe9e Add a Qt I/O Graph dialog.
For each graph you can set:
- Its visibility
- A name
- A display filter
- Color, from a fixed list
- Plot style: Line, Impulse, Bar, Stacked Bar, Dot, Square, Diamond
- Basic Y Axes (packets/s, bytes/s, bits/s)
- Computed Y Axes (SUM, MIN, AVG, MAX)
- Smoothing

You can pan and zoom using the mouse and keyboard. Clicking on a graph
selects the last packet for that interval. If all graphs have the same Y
axis a single label is shown, otherwise a legend is shown.

The time scale (X axis) can be toggled between relative seconds and the
time of day.

Graphs can be saved as PDF, PNG, BMP, and JPEG. Settings are "sticky"
via the io_graphs UAT.

To do:
- Minimize graph drawing delays.
- Figure out why smoothing differs from GTK+
- Everything else at the top of io_graph_dialog.cpp
- Fix empty resets.

A fair amount of code was copied from TCPStreamDialog. We might want to
subclass QCustomPlot and place the shared code there.

Move common syntax checking to SyntaxLineEdit.

Move some common code from ui/gtk/io_stat.c to ui/io_graph_item.[ch] and
use it in both GTK+ and Qt.

Make the io_graph_item_t array allocation in io_stat.c static. The
behavior should be identical and this gives us additional compile-time
checks.

Change-Id: I9a3d544469b7048f0761fdbf7bcf20f44ae76577
Reviewed-on: https://code.wireshark.org/review/435
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Tested-by: Gerald Combs <gerald@wireshark.org>
2014-04-07 20:56:42 +00:00
Alexis La Goutte 757aa33220 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^\# \$Id\$/,+1 d') (start with dash)

Change-Id: Ia4b5a6c2302f6a531f6a86c1ec3a2f8205c8c2dd
Reviewed-on: https://code.wireshark.org/review/881
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:48:06 +00:00
Alexis La Goutte b0ba475fbf Continue to remove $Id$ from top of file
(Using sed : sed -i '/^  \$Id\$/,+1 d') (No star only 2 spaces before)

Change-Id: Id7b254031769a9dca2941304e4d3a0f4bdbc3f54
Reviewed-on: https://code.wireshark.org/review/883
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:46:57 +00:00
Pascal Quantin a1d4189c5e Upgrade Windows builds to Lua 5.2.1
Change-Id: I5d2058673b69beb8393aae0571703cd9dbb79c4e
Reviewed-on: https://code.wireshark.org/review/863
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-03-29 16:30:53 +00:00
Hadriel Kaplan ca9c160933 Fix bug9931 'Encapsulated ethernet packets sometimes show invalid FCS'
This fixes part-1 of bug9931: the uninitialized use of a wtap_pkthdr
struct. The second part of the bug deals with dissectors calling
the Ethernet dissector for ecnapsulated Ethernet packets but using
the wrong dissector handle to do so. That's unrelated to the issue this
commit addresses, so I'm splitting them up.

Change-Id: I87be7b736f82dd74d8c261062f88143372b5344c
Reviewed-on: https://code.wireshark.org/review/848
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-27 21:39:57 +00:00
Alexis La Goutte 864304c870 Update to QCustomPlot 1.2.0
Reapply remove trailing whitespace and some spelling fixes
MSCV warning are already fixed
Fix also a not ASCII caracter in qcustomplot.h

Change-Id: Ied6b0a4ad7397caea6b75fa56f4f2d6ea91d0472
Reviewed-on: https://code.wireshark.org/review/787
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-23 07:54:09 +00:00
Alexis La Goutte 99505109bb Add missing modelines info
Change-Id: Ic0f83eb469442b386d6389c08860b0faaae2e324
Reviewed-on: https://code.wireshark.org/review/785
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-23 06:59:37 +00:00
Alexis La Goutte 51597c17a6 Add a missing word to translation
Change-Id: I7ec79840331a5072f12236c27f8dc842c703b23f
Reviewed-on: https://code.wireshark.org/review/773
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-03-21 19:05:16 +00:00
Alexis La Goutte aa082ce786 Enhance translation (rename toolTip to avoid similar string...)
Change-Id: I23e30b445ac587e2702477afcf6b155ff21f23d4
Reviewed-on: https://code.wireshark.org/review/772
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-03-21 19:05:01 +00:00