The GNOME HIG says "Where a corresponding toolbar icon exists, a menu
icon should mirror its design." The Windows and OS X HIGs say that you
should use them for common or familiar actions but otherwise avoid
clutter. I think icons in the "File" menu look like crap. Try to strike
a balance.
Use the 16x16 application icon for both the main web site and the wiki
since that's the favicon used on both sites.
Assume that "Reload" isn't used very often and remove it from the
toolbar.
Don't use a menu icon for the about box.
Other minor fixups.
Change-Id: I855211c218d266c2e9ed5acbe05a08750ab6d157
Reviewed-on: https://code.wireshark.org/review/4246
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Set the main window icon to the "wsiconcap" version while we're capturing
similar to the GTK+ version. Verified on Windows. Not sure if this will
do anything on other platforms.
Change-Id: I9b082601a2c47e5f52cc38ac8d9b4d9f5fb9a4d9
Reviewed-on: https://code.wireshark.org/review/4230
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Add ".on" versions of the x-capture-start icon along with corresponding
code in the StockIcon constructor to look for ".on" variants and add
them with the QIcon::On state.
Make the plain versions of x-capture-start blue to match the general
application icon. The goal is to make the toolbar and app icon fins blue
when Wireshark is "at rest" and green when it's capturing.
Change-Id: I31f4f9d910fc99c41d7c63bd9a722db1611760c7
Reviewed-on: https://code.wireshark.org/review/4225
Reviewed-by: Gerald Combs <gerald@wireshark.org>
In my version of XCode ranlib complains bitterly and returns an error if
a module has no symbols. Make the AirPcap, RTP player, and remote
capture code conditional. We could also try passing
"-no_warning_for_no_symbols" to ranlib but we probably shouldn't try to
comple the code in the first place.
Change-Id: Ide4f3d649eac354d54f0dde27dbc8e9cb270c65f
Reviewed-on: https://code.wireshark.org/review/4220
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
The new icons are patterned after the existing capture icons. They could
probably benefit from some adjustments here and there.
Start moving toward icon names and a directory layout compliant with
freedesktop.org's Icon Naming Specification and Icon Theme
Specification. We aren't fully compliant and might never be but anyone
with exposure to FDO icon themes should at least know where everything
is.
Make Capture Start (x-capture-start) the first icon in the toolbar.
Define the Colorize Packets, Auto Scroll, and zoom icons even though the
Qt UI doesn't use them yet.
Leave the Capture Filter, Display Filter, Coloring Rules, Preferences,
and Help icons off for now. The GTK+ toolbar is overly cluttered and I'm
not sure they're necessary.
Try not to break ui/gtk/toolbar_icons.h.
Remove welcome.qrc. I initially added it in case we needed to overlay
the welcome screen with translucent .pngs but that never happened.
To do:
- Move the old GTK+ icons to their own directory.
- Find a better name for the "toolbar" directory. "stock"?
- Make the toolbar configurable.
Change-Id: Ie07592113d307b8db786aedace672312a870fe38
Reviewed-on: https://code.wireshark.org/review/4182
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Do this by emitting the StaticRecentFilesRead signal after reading the static
portion of the recent file.
Unfortunately this results in the main window appearing in one size and
then resizing to the saved size but I haven't figured out how to fix that yet.
At the very least this prevents qtshark's default geometry from being saved to
my recent file and affecting wireshark-gtk's geometry.
Change-Id: I47b66078a9d00cb321badc744f1337ff39ca42a7
Reviewed-on: https://code.wireshark.org/review/4177
Reviewed-by: Evan Huus <eapache@gmail.com>
We really need a buildbot or Petri-Dish which doesn't have GeoIP because
this problem keeps popping up.
Bug: 10480
Change-Id: Iccba50dfcafd2dbacb315b9416324de4114be220
Reviewed-on: https://code.wireshark.org/review/4171
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
It still not complete.
Change-Id: I53c3efe9c6cf0456fcea55336114086445d3bfe9
Reviewed-on: https://code.wireshark.org/review/2719
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
If it is used, there is a modified file in git.
Fix this by only including the file if it exists.
Other changes:
- Rename the existing Custom files to CMakeListsCustom.txt.example.
- Move the plugins custom file to the top level (same level as its
including parent).
- Optionally allow a list of custom includes instead of the default one.
Change-Id: I8960eac6222f741c045055d43d1d5a2d4979caf6
Reviewed-on: https://code.wireshark.org/review/4163
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
Move the map creation code from ui/gtk/hostlist_table.c to
ui/traffic_table_ui.c.
Add CMake commands to copy ipmap.html to the run directory so that
WIRESHARK_RUN_FROM_BUILD_DIRECTORY works for the endpoint map. Not sure
if they're entirely correct but they appear to work.
Add boundary checkes to geoip_db_lookup_ipv[46].
To do:
- It looks like there are prettier maps and newer APIs that we
might want to use.
Change-Id: Ie06992c9bc9c9aa683328aecab3f5f69c9cab966
Reviewed-on: https://code.wireshark.org/review/4011
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Different GeoIP databases have the same column name, e.g. "City"
currently matches two revisions each for IPv4 and IPv6. Map each
uniquely named column to a list of databases and populate
EndpointTreeWidgetItem columns based on the first database match.
Fix a copy/pasteo introduced in g30f3d52: Make sure
geoip_db_lookup_ipv[46] returns longitude instead of latitude.
Change-Id: Idd31f976dfd1cb011cfa7b5aec14b7031ee0e25e
Reviewed-on: https://code.wireshark.org/review/4157
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Just use "sizeof line" for the size of that array; don't have a separate
variable with the number of elements of the array (which at least is
equal to the size of the array, as it's an array of char), as that means
that you have to remember to change both of them.
Then cast "sizeof line" to int, as the second argument to fgets() is an
int, not a size_t (fgets(), as I remember, existed before size_t).
Change-Id: I3c65774527f4fcd824d7ae39208ab6e8e33eb9b4
Reviewed-on: https://code.wireshark.org/review/4023
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Change-Id: Iebe0c581259b80d905f0ef3e26c1caae07f715d1
Reviewed-on: https://code.wireshark.org/review/4012
Reviewed-by: Michael Mann <mmann78@netscape.net>
C++, unlike C, lets you do that. This squelches warnings from MSVC++.
Change-Id: Id7127392b7690769111afdb951951d743f1d5e63
Reviewed-on: https://code.wireshark.org/review/4019
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Change-Id: Ib72178aab69c266cb903ef5ad5587cc0b80eb1fd
Reviewed-on: https://code.wireshark.org/review/4007
Reviewed-by: Michael Mann <mmann78@netscape.net>
they were renamed from qtshark_... to wireshark_...
Change-Id: I97b245a9028b4ed99812204114ba8f59357d49e8
Reviewed-on: https://code.wireshark.org/review/3995
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
It looks like we need to install and/or configure Qt on the Windows
petri dish builder.
Change-Id: I2bdde7cd9216e311d6402116d6c67b37d37e182d
Reviewed-on: https://code.wireshark.org/review/3997
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Create a TrafficTableDialog (for lack of a better name) parent class
from the general parts of ConversationDialog. Use it to create
EndpointsDialog.
Move the contents of conversation_tree_widget.{cpp,h} to
conversation_dialog.{cpp,h} to match endpoint_dialog and
traffic_table_dialog.
Fill in GeoIP columns dynamically instead of using a hard-coded limit.
Use "endp_" and "ENDP_" prefixes for a lot of endpoint variables and
defines.
Try to make geoip_db_lookup_ipv4 and geoip_db_lookup_ipv6 more robust.
Clean up some includes. Fix a shadowed variable.
Change-Id: I23054816ac7f8c6edb3b1f01c8536db37ba4122d
Reviewed-on: https://code.wireshark.org/review/3462
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
this fixed the line numbers, marked some items as obsolete and added new
items
corrected some minor problems
Promiscious Mode was changed to Monitor Mode, update the translation
accordingly
Change-Id: I63b3ef0fb3488d941d6d1170b911026281f94a0a
Reviewed-on: https://code.wireshark.org/review/3994
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Martin Kaiser <wireshark@kaiser.cx>
japanese language update
Change-Id: I92a68f389a7ac1e07eb11c970d5e37c31fde22c1
Reviewed-on: https://code.wireshark.org/review/3993
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Martin Kaiser <wireshark@kaiser.cx>
It looks like some versions of GTK+ intialize GtkFileChooserButton with a
location set to NULL and crash when you select an item from the dropdown
menu. Make sure we have a valid location set in that case.
Change-Id: If2556ef939b95d8af12581a7116a48fb46586f57
Bug: 10434
Reviewed-on: https://code.wireshark.org/review/3977
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Our Windows portable packaging environment has a lot of cruft which is
no longer relevant. We removed support for U3 packages and the method
we use to generate PortableApps packages has been deprecated for a while.
Create PortableApps packages using current file formats (AppInfo v3.0)
and tools. Generate the PA launcher using the PortableApps.com Launcher
generator. Copy files and directories from the top level instead of using
a manifest derived from the NSIS installer.
The manifest is a good idea, but we should create a central manifest
and use that to generate the NSIS and PortableApps packages instead of
trying to parse wireshark.nsi.
The new package still needs a bit of work but it installs and runs in
the current version of the PA Platform.
Remove the define for MAKENSIS_UNICODE. It doesn't look like we were
using it.
Start tearing down makefiles and scripts that we no longer use.
Ping-Bug: 4191
Change-Id: Ib7173eec887d0abf69bb176a1e3f943a5a63bee4
Reviewed-on: https://code.wireshark.org/review/3962
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Make sure the Qt UI is named "Wireshark" and its executable is named
"wireshark" or "wireshark.exe". Make sure the GTK+ UI is named
"Wireshark 1" or "Wireshark (GTK+)" depending on how much the target
audience is likely to care about UI toolkits. Make sure the GTK+
executable is named "wireshark-gtk" or "wireshark-gtk.exe".
It looks like moving to Qt 5.3 (g978faf3) broke the PortableApps
package. It's likely even more broken now.
Autotools out-of-tree builds also broke on Ubuntu 12.02 (automake
1.11.3) at some point. The first attempt to compile in ui/qt returns
"error: source_file.cpp: No such file or directory". The second attempt
works. Out-of-tree builds work fine on Ubuntu 14.04 (automake 1.14.1).
Tested:
- Nmake builds
- NSIS packaging
- CMake builds (Windows, OS X)
- Autotools build and distcheck
- RPM packaging
To do:
- Test Debian packaging
- Fix PortableApps
Change-Id: I66429870e05fd2d6fc901942477959ed6164fce2
Reviewed-on: https://code.wireshark.org/review/3919
Reviewed-by: Gerald Combs <gerald@wireshark.org>
Convert QTableWidget to QTreeWidget.
It looks like the GTK+ version has a separate set of apply/save buttons
for each tab which *only* operates on that tab. This can result unexpected
behavior which throws away changes if the user updates more than one
tab. Use a single "OK" button that applies all of our changes instead.
Reorder the tabs. Put Local Interfaces first and select it by default.
Always show Remote Interfaces. Disable it on platforms that don't have
PCAP_REMOTE.
Automatically start editing when we add a new pipe. Don't immediately
update pipe interface settings. Wait until we hit "OK" instead.
Rename NewFileDelegate to PathChooserDelegate. Note that we might want
to move it use it elsewhere in the application.
Try switching the user-facing terminology from "Hide" to the more
positive "Show".
Tell the user that we don't save pipe or remote interface settings.
Add a help URL for the "Manage Interfaces" dialog box.
Use the GLib and Qt string functions and classes to split and join
comma-separated preferences. This makes sure capture_dev_user_descr_find
doesn't skip over the first interface. It also keeps the Qt code from
adding a leading comma to our capture preferences.
Add a note about strings to README.qt. Summary: Use QStrings.
For another day:
- If we *do* save remote settings we need to store credentials securely,
e.g. with CryptProtectData.
- Get rid of the remote settings dialogs. Their controls should fit in the
remote settings tab.
- Add an extcap tab.
- We need getter/setter functions for global_capture_opts.all_ifaces. We
iterate over it *way* too much.
Change-Id: Ib7b61972f3ece4325e0230f725e7f2678acbb24b
Reviewed-on: https://code.wireshark.org/review/3873
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Gerald Combs <gerald@wireshark.org>
PortAudio seems to return 0 as value for Pa_GetStreamTime() on
a PulseAudio system using the ALSA host API. This is known for 3 years,
but still has not been fixed. As this function basically gives us a
monotonically increasing clock in seconds as double, just use the Glib
library function for that. I don't know whether this adds much latency,
but it is certainly better than breaking the progress line (and also
the related auto-scroll).
While at it, split the idx calculation and explain what each part does
and add modelines. Remove invalid _U_ annotations.
[1]: http://music.columbia.edu/pipermail/portaudio/2011-June/012452.html
Bug: 10307
Change-Id: I67fff531e0577add4b9b76052e286fb3fd5d01ff
Reviewed-on: https://code.wireshark.org/review/3260
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
This squelches some compiler warnings about assigning double values to
floats (no, there's no precision in 0 to lose, but the compiler warns
anyway).
Change-Id: Ia49618cb8582c5afcdc5bdc5334fe20724b85eda
Reviewed-on: https://code.wireshark.org/review/3762
Reviewed-by: Guy Harris <guy@alum.mit.edu>
Extcap is a plugin interface, which allows for the usage
of external capture interfaces via pipes using a predefined
configuration language which results in a graphical gui.
This implementation seeks for a generic implementation,
which results in a seamless integration with the current
system, and does add all external interfaces as simple
interfaces.
Windows Note: Due to limitations with GTK and Windows,
a gspawn-winXX-helper.exe, respective gspawn-winXX-helper-console.exe
is needed, which is part of any GTK windows installation.
The default installation directory from the build is an extcap
subdirectory underneath the run directory. The folder used by
extcap may be viewed in the folders tab of the about dialog.
The default installation directory for extcap plugins with
a pre-build or installer version of wireshark is the extcap
subdirectory underneath the main wireshark directory.
For more information see:
http://youtu.be/Nn84T506SwU
bug #9009
Also take a look in doc/extcap_example.py for a Python-example
and in extcap.pod for the arguments grammer.
Todo:
- Integrate with Qt - currently no GUI is generated, but
the interfaces are still usable
Change-Id: I4f1239b2f1ebd8b2969f73af137915f5be1ce50f
Signed-off-by: Mike Ryan <mikeryan+wireshark@lacklustre.net>
Signed-off-by: Mike Kershaw <dragorn@kismetwireless.net>
Signed-off-by: Roland Knall <rknall@gmail.com>
Reviewed-on: https://code.wireshark.org/review/359
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
4189: Local variable is initialized but not referenced
Fix some variables found by this
Change-Id: Icc13def5413f1fe885ec25e659462c8906a6cfa0
Reviewed-on: https://code.wireshark.org/review/3748
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
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>
Add static before function
Change-Id: I42c5be7a1436160bcb82d0cb4309959802b7b3cb
Reviewed-on: https://code.wireshark.org/review/3696
Reviewed-by: Anders Broman <a.broman58@gmail.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
And, while we're at it, reject entries with invalid numbers.
Change-Id: Ifefe28396cfe391d2d5c7f7ff335d0f041e35a03
Reviewed-on: https://code.wireshark.org/review/3417
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
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>
Also: remove vestigial line of commented-out code.
Change-Id: Ieb41a0e39a4e0ec14031b1dbd38fc0d7ad47a635
Reviewed-on: https://code.wireshark.org/review/3278
Reviewed-by: Bill Meier <wmeier@newsguy.com>
(Introduced when the ipv4_hash_table key format was changed in 5d98ab67)
Change-Id: Ie5d1314f7c7cc8bc71dca8a2db05e34a0a7776d7
Reviewed-on: https://code.wireshark.org/review/3277
Reviewed-by: Bill Meier <wmeier@newsguy.com>
Also use %u instead of %d for these unsigned numbers.
Change-Id: I3d1df3bdcc3c68193b49ba8daf1dc56171356290
Reviewed-on: https://code.wireshark.org/review/3266
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
I intentionally left the fields displayed alone (so they don't exactly match Wireshark GUI), because as Guy points out in bug 6310, not sure its A Bug or A Feature. But at least all types of conversations allowed are in sync with Wireshark GUI.
Bug:6310
Change-Id: I722837df510a39dadc1f9a07a99275509516698c
Reviewed-on: https://code.wireshark.org/review/3212
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
setlocale returns a statically-allocated memory which can be modified by
subsequent calls of setlocale. This triggers a heap-use-after free in
ASAN when the setlocale function is called again with the previous
pointer.
This was found when trying to use the "Show All Streams" option via
the Telephony -> RTP menu.
While at it, add some modelines
Change-Id: Ide47e877ce828734fd8c5c1b064d9c505ba2b37a
Reviewed-on: https://code.wireshark.org/review/3234
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Evan Huus <eapache@gmail.com>
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>
There is still some const-incorrect usage of them but those can be ironed
out after this change has been made.
Change-Id: Iba0631c804bdab34d7c0232b49967130e3370488
Reviewed-on: https://code.wireshark.org/review/3199
Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
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>
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>
Change-Id: I2d2bbc211e98ad24a27c855031f670b7bdbd530e
Reviewed-on: https://code.wireshark.org/review/3162
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
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>
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>
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>
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>
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>
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>
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>
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>
This was started by Chris Maynard before Qt was announced and I just polished it off for inclusion in GTK version of Wireshark.
This also can be used as input into the Qt version of the Expert Info "dialog" since it hasn't been written yet. Personally I like the "template" the Qt statistics dialog has with the display filter built it. I think that would work well for the Expert Info dialog as well.
bug:1860
Change-Id: Icaada6e7900f22b0a3d97c2a5656edfd8d8c8b7f
Reviewed-on: https://code.wireshark.org/review/3035
Reviewed-by: Christopher Maynard <Christopher.Maynard@gtech.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
That way, if we're reading a Windows-format file on UN*X, we handle it
the same way we'd handle a UN*X-format file.
This handles bug 10272 for the cfilter and dfilter file; there are other
configuration files that may need code changes as well.
While we're at it, don't hand non-ASCII characters to isspace().
Change-Id: I4f5efeaa938bcb2d85737ab136c3ca19ea1ddb5b
Reviewed-on: https://code.wireshark.org/review/3045
Reviewed-by: Guy Harris <guy@alum.mit.edu>
when we delete an interface from all_ifaces, delete it from ifaces as well
remove its selected status if it was selected
at the moment, an interface that was used for capturing before will
never be removed from the list of interfaces even if it becomes
unavailable as it remains in ifaces and will be re-added to all_ifaces
in scan_local_interfaces()
new helper function capture_opts_del_iface() to delete an entry from ifaces and
free all its components
Change-Id: Ie3271a7ed086367e511d3a971f3b68cfc014115d
Reviewed-on: https://code.wireshark.org/review/2965
Reviewed-by: Evan Huus <eapache@gmail.com>
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>
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>
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>
"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>
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>
(named pipes added with -i <pipe name> don't have such a description)
Change-Id: I5986c607f5103b800c4353fd3cf01f24149e2e5c
Reviewed-on: https://code.wireshark.org/review/2940
Reviewed-by: Martin Kaiser <wireshark@kaiser.cx>
Tested-by: Martin Kaiser <wireshark@kaiser.cx>
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>
With autotools, CMake, and nmake, if we have a function, #define
HAVE_{function_name_in_all_caps}, otherwise don't #define it.
If we provide our own version of a function in libwsutil, make sure we
have a header that declares it, and *ONLY* include that header if
HAVE_{function_name_in_all_caps} is *NOT* defined, so that we don't have
the system declaration and our declaration colliding.
Check for inet_aton, strncasecmp, and strptime with CMake, just as we do
with autotools.
Simplify the addition of {function_name_in_all_caps}_LO to libwsutil in
autotools.
Change-Id: Id5be5c73f79f81919a3a865324e400eca7b88889
Reviewed-on: https://code.wireshark.org/review/2903
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
The groups are, technically, independent of the notion of a menu, and,
if we have mechanisms by which taps that are not only GUI
toolkit-independent but independent of the *existence* of a GUI can be
registered, they might want to register themselves in a group just in
case they're running in a program that has a GUI.
Also, this might fix the Debian package build.
Change-Id: I29435681e79748fd4f2e0c5ac872cd11f831d172
Reviewed-on: https://code.wireshark.org/review/2830
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
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>
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>
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>
We don't need to do the right __attribute__ magic ourselves; GLib does
it for us.
Change-Id: Id31943a8413f0272237be4f868659b5bd5e70626
Reviewed-on: https://code.wireshark.org/review/2758
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
Make some arguments and structure members gsize, as that's what stored
into them or passed to them. (And move a newly-widened-on-LP64 item, to
avoid extra structure padding.)
Add a cast, which also appears necessary to squelch a warning.
Clean up indentation while we're at it.
Change-Id: I0cc92e7d2904c5af1f3f3d93f51b6ecb3aed464d
Reviewed-on: https://code.wireshark.org/review/2741
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
There's no reason to do it only on Windows - and, in fact, the only
platform where we currently do anything with the information is OS X.
Every other program in the Wireshark suite that does it at all does it
on all platforms.
Change-Id: I8ab29fd86656dd44322991d0d7263c6bb4fcd425
Reviewed-on: https://code.wireshark.org/review/2730
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
Add SIP Flows menu option beside VoIP Calls.
Flow for all SIP message types (which have a call-id) is shown in SIP Flow.
Add useful info(original flow method, response code, cseq) to comment field in conversation and flow dialogs.
Change-Id: I4801a633ed9b6594b2d89629c9d6fec6352da150
Reviewed-on: https://code.wireshark.org/review/2479
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: James Coleman <gaoithe@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Bug: 9460
Change-Id: I80d991053eb47b8650561e8af4cc8dec512e2c9c
Reviewed-on: https://code.wireshark.org/review/2619
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This pulls some stuff out of the top-level directory, and means we don't
have to build them once for every program using them.
Change-Id: I37b31fed20f2d5c3563ecd2bae9fd86af70afff5
Reviewed-on: https://code.wireshark.org/review/2591
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
It's Windows-specific, so name it appropriately.
Change-Id: Ic518cbfabebf95757f6b308a4d547a6cabed6a5e
Reviewed-on: https://code.wireshark.org/review/2528
Reviewed-by: Guy Harris <guy@alum.mit.edu>
This mean we also have to move CFString_to_C_string() there for OS X.
Change-Id: Ic91ad872e9d5290cf34f842503ededd5452e4337
Reviewed-on: https://code.wireshark.org/review/2511
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
No capturing, no capture options.
Change-Id: I0023184b9c358d5876f19a098590f34d641c8649
Reviewed-on: https://code.wireshark.org/review/2493
Reviewed-by: Guy Harris <guy@alum.mit.edu>
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>
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>
64-bit, and was being fetched that way - but not stored that way - leading to some very strange
(and large) values.
Change-Id: I2235ae7f1bab7f48f99afac70109a7d8f9b38e2b
Reviewed-on: https://code.wireshark.org/review/2468
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
Set initialize position to center on parent
bug: 3817
Change-Id: Iad48aa762d892908d50f742606160c8305084f48
Reviewed-on: https://code.wireshark.org/review/2459
Reviewed-by: Balint Reczey <balint@balintreczey.hu>
Tested-by: Balint Reczey <balint@balintreczey.hu>
Change-Id: Ibd2fa6c791253e4dbac9a21532e894db3327ce57
Reviewed-on: https://code.wireshark.org/review/2465
Reviewed-by: Michael Mann <mmann78@netscape.net>
ws_gtk_grid_attach_extended() to do the heavy lifting.
Change-Id: I1c9d12556857196f53fadbce70f206a3cc41f7a5
Reviewed-on: https://code.wireshark.org/review/2433
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
bug: 10204
Change-Id: Ie21cc07b0ac9a56648ec72062ce58a1ac800318e
Reviewed-on: https://code.wireshark.org/review/2420
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
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>
Also remove that function as it is now unused.
Fix what appeared to be a memory leak in the manual address resolution dialog
while in the neighbourhood.
Change-Id: I75128ab0f95e5a7673f92bfeea45191f00581c25
Reviewed-on: https://code.wireshark.org/review/2244
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
- 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>
* 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>
Change-Id: I07207177e97e22bb8810226818b2280db5f5055e
Reviewed-on: https://code.wireshark.org/review/1836
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
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>
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>
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>
While investigating an ASAN issue (fixed in
commit dcdd076ab0), I got greatly confused
by three different types having the same "interface_data" field name:
* pcapng_t *pn stores an array of interface_data_t objects.
* wtap *wth stores an array of wtapng_if_descr_t objects.
* pcapng_dump_t should store an array of interface_data_t objects.
pcapng_dump_t and friends are unused since
commit c7f1a431d2, so drop it.
To fix the confusion, rename the interface_data_t type to
interface_info_t type and use the local variable "iface_info"
everywhere. Rename interface_data of pcapng_t to "interfaces" and
add a comment what this exactly means (interfaces listed in the capture
file).
Drop the number_of_interfaces field for interfaces as the array
length is already available from GArray. Now interface_data is always
initialized for wth (which also gets copied to idb).
s/int/guint/g and replace cast at some places.
There are no regressions for the in-tree test suite.
Change-Id: I2d5985c9f1e43f8230dbb4a73bd1e243c4858170
Reviewed-on: https://code.wireshark.org/review/1656
Reviewed-by: Evan Huus <eapache@gmail.com>
Tested-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
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>
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>
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>
With tshark stats are being configured before the file gets loaded and the number of TCP streams are computed
Bug: 9541
Change-Id: I42c2891124f1781b05967d5f071ad40df2d6d9f5
Reviewed-on: https://code.wireshark.org/review/1598
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
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>
It was broken since 48285bb16b
While we are at it, display the streams in the same order as Qt version
Change-Id: I12df1c033dd51b7a162adca3fd36b31af5c074a1
Reviewed-on: https://code.wireshark.org/review/1587
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
- 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>
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>
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>
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>
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>
bug:9718
Change-Id: I05330d8a2475ad0d238723d444f3d98bdbd7be39
Reviewed-on: https://code.wireshark.org/review/1041
Reviewed-by: Michael Mann <mmann78@netscape.net>
Unreachable code due to conflicting defines: checking for GTKOSXAPPLICATION inside _WIN32
Found by Edwin
Closed-bug: 10065
Change-Id: I074fa14069e859b3fc4b7f50c443a67e7f0e954b
Reviewed-on: https://code.wireshark.org/review/1456
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Found spelling error "a another". All those dynamic allocations and
magic numbers are horrible and unnecessary. Simplify the gtk code
rewording the message and merging strings.
Simplify the version code by using fscanf to take care of matching
the first line of a preference file.
Change-Id: I1e75803aacaa494ba5005791bcbd023e0807aaaa
Reviewed-on: https://code.wireshark.org/review/1424
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Dialogs with only "Save" and "Don't save" buttons do not have a default
cancel action. Check for the existence of an OK button before
registering one.
This fixes three warnings when trying to trying to overwrite preferences
with unknown keys.
Change-Id: Ie583c40d3db8405d94b8d77710a7fb6556eac89d
Reviewed-on: https://code.wireshark.org/review/1423
Reviewed-by: Anders Broman <a.broman58@gmail.com>
This moves a bunch of character set knowledge into epan/charsets.c.
Change-Id: Ieb79dcaac9753c77703af756b666ad2ca9385d9e
Reviewed-on: https://code.wireshark.org/review/1339
Reviewed-by: Guy Harris <guy@alum.mit.edu>