summaryrefslogtreecommitdiff
path: root/ui/qt
AgeCommit message (Collapse)AuthorFilesLines
2014-08-03Have ConversationDialog retain data between captures.Gerald Combs1-0/+6
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-02Rename buffer_ routines to ws_buffer_ to avoid name collisions.Guy Harris1-3/+3
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-02CompiledFilterOutput dialog fixes and updates.Gerald Combs4-50/+62
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-01Move the AirPcap stuff into caputils.Guy Harris2-3/+2
Change-Id: I64b45dad36a3ec491aeb9de3439b4fe19b46f9d8 Reviewed-on: https://code.wireshark.org/review/3308 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-29Ensure that QT5_BASE_DIR is known by QtShark.proPascal Quantin1-1/+1
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-28From 竹下 恵 (Megumi Takeshita)Martin Kaiser2-192/+192
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-26Refactor "common" Conversation table functionality.Michael Mann6-333/+108
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-25Don't use capture_interface_list() in this dialog.Guy Harris1-19/+17
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-25Make Capture -> Refresh Interfaces work.Guy Harris4-0/+25
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-25Handle empty interface lists when the list changes.Guy Harris2-79/+48
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-22Get rid of NO_INTERFACES_FOUND - it's not an error.Guy Harris1-10/+5
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-22Don't return an error string for NO_INTERFACES_FOUND.Guy Harris1-3/+7
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-22Our users are not particpants in a comedy sketch.Gerald Combs3-11/+24
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-22Don't connect to non-existent slots.Guy Harris3-2/+7
(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-21Rename ifListChanged to localInterfaceListChanged.Guy Harris5-5/+5
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[WIP] Add a conversation dialog.Gerald Combs19-79/+1979
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-21Have the interface "tree" directly connect to ifListChanged.Guy Harris2-1/+2
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-21Make the Qt version update displays when interfaces appear or disappear.Guy Harris4-0/+84
Change-Id: If1218baaae9dcd93ddb1cea81ac5457f90a57c6c Reviewed-on: https://code.wireshark.org/review/3152 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-21Add a warning that not all command line options are implementedJoerg Mayer1-0/+1
Change-Id: If1b12fed6d04623a4265131a2ff666d4a937d382 Reviewed-on: https://code.wireshark.org/review/3151 Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-07-20Get rid of #if 0'ed out includes of capture-pcap-util.h.Guy Harris3-9/+0
Change-Id: Ie3678a08ed9b3d46b22e7c59eef74e6e9636ae59 Reviewed-on: https://code.wireshark.org/review/3140 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-20Add qtshark_ja_JP.qm to the list of .qm files we distribute.Guy Harris1-4/+5
Change-Id: I95a724c196bd5730af96439f8854169166c59e7a Reviewed-on: https://code.wireshark.org/review/3135 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-20start support for the Japanese language in the Qt versionMartin Kaiser8-0/+8563
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-17Try to make tap operations in the Qt UI more responsive.Gerald Combs1-0/+3
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-16"Export PDUs to File" pops up a dialog, so put "..." after it.Guy Harris5-6/+6
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-15Cleanup the "export PDU" common code.Guy Harris1-0/+1
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-11Add plumbing for stat commands ("-z ...").Gerald Combs9-67/+145
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-11GTK Remote CapturingIrene Ruengeler5-177/+0
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-10Revert "See if we can get rid of the "lib" in front of "wsutil" on Windows."Guy Harris1-2/+2
This reverts commit c5a50df51f38e10e3a3618d9394364f60a1ca8af. 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-09See if we can get rid of the "lib" in front of "wsutil" on Windows.Guy Harris1-2/+2
"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-09Add back actionFileQuit.Gerald Combs1-0/+16
Change-Id: I76cfe038c02a869fb71dc74b7c55fd932e2ccbb2 Reviewed-on: https://code.wireshark.org/review/2967 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-09Fix a "recent items" crash.Gerald Combs3-23/+19
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-09Merge capture->interfaces and capture->optionsEvan Huus3-24/+1
Change-Id: I0a2976da97bd777abbf4701915551d9d481b0a13 Reviewed-on: https://code.wireshark.org/review/2785 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-09Wireshark Qt: Fix recent (update the list of file when quit Wireshark)Alexis La Goutte2-25/+10
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-07Update README.qt and add todo items.Gerald Combs1-0/+1
Change-Id: I69c080253cf7e861c575573e74a66b83e014cbb0 Reviewed-on: https://code.wireshark.org/review/2925 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-07Qt: Cache packet list column strings.Gerald Combs4-122/+237
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-06Fix Dead Store (Dead assignement/Dead increment) warning found by ClangAlexis La Goutte1-1/+1
Change-Id: I9946e55ee33ccbf57c6b268f725f5b1a537b61a9 Reviewed-on: https://code.wireshark.org/review/2897 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-04Add missing /AndersBroman1-1/+1
Change-Id: I84758200bce592f84547bff84f02d743327baa03 Reviewed-on: https://code.wireshark.org/review/2848 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-07-04Fix the no-libpcap build.Guy Harris1-3/+1
Change-Id: I2443ab22d423508641ac199262238e5fbafc95df Reviewed-on: https://code.wireshark.org/review/2843 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-04Move utility routines for capturing into a libcaputils static library.Guy Harris7-56/+22
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-04Remove accidental trailing \Evan Huus1-1/+1
Change-Id: I84e6aa71e31528b2949e68f0f07778fb9e26379e Reviewed-on: https://code.wireshark.org/review/2839 Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-04Sort by name list of fileAlexis La Goutte1-15/+16
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-03Include <sys/capaibility.h> to get _LINUX_CAPABILITY_VERSION defined.Guy Harris1-0/+4
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-03Include "capture-pcap-util.h" even if we don't have libpcap.Guy Harris1-1/+2
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-03Make --help and --version information a bit more uniform.Guy Harris1-4/+57
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-03Regularize the help output of programs.Guy Harris1-7/+5
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-03Regularize the first line of version output.Guy Harris1-2/+2
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-02Manage InterfacesIrene Ruengeler14-13/+996
- 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-01Fix the QT build on Qt 5.3 or later to use the windeployqt toolGraham Bloice1-7/+16
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-01Add a comment that appears in other programs.Guy Harris1-0/+1
Change-Id: Ife885779d339fbb706c9d6cfd931833afba25277 Reviewed-on: https://code.wireshark.org/review/2742 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-30Do startup things in an order more like that of gtkshark.Guy Harris1-47/+48
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>