aboutsummaryrefslogtreecommitdiffstats
path: root/capchild/capture_sync.c
AgeCommit message (Collapse)AuthorFilesLines
2017-06-03If has_snaplen isn't set, don't set the snapshot length with ↵Guy Harris1-1/+1
pcap_create()/pcap_activate(). Just let libpcap pick the snapshot length; that way, for link-layer types that need a really large snapshot length, such as D-Bus (which requires 128MB for the largest messages), it can pick that, but can otherwise pick something that doesn't require as much memory, e.g. 256KB. For pcap_open_live() and pcap_open(), which don't have a way of saying "give me what's appropriate", pick 256KB. Change-Id: Idef5694f7dfa85eaf3a61d6ca7a17d263c417431 Reviewed-on: https://code.wireshark.org/review/21917 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-04-08Clean up handling of enabled/disabled protocols/heuristic dissectors.Guy Harris1-1/+1
Add a "report a warning message" routine to the "report_err" code in libwsutil, and rename files and routines appropriately, as they don't only handle errors any more. Have a routine read_enabled_and_disabled_protos() that reads all the files that enable or disable protocols or heuristic dissectors, enables and disables them based on the contents of those files, and reports errors itself (as warnings) using the new "report a warning message" routine. Fix that error reporting to report separately on the disabled protocols, enabled protocols, and heuristic dissectors files. Have a routine to set up the enabled and disabled protocols and heuristic dissectors from the command-line arguments, so it's done the same way in all programs. If we try to enable or disable an unknown heuristic dissector via a command-line argument, report an error. Update a bunch of comments. Update the name of disabled_protos_cleanup(), as it cleans up information for disabled *and* enabled protocols and for heuristic dissectors. Support the command-line flags to enable and disable protocols and heuristic dissectors in tfshark. Change-Id: I9b8bd29947cccdf6dc34a0540b5509ef941391df Reviewed-on: https://code.wireshark.org/review/20966 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2017-02-20Don't use identical log messages for non-identical error cases.Joerg Mayer1-2/+2
Change-Id: Ia80f112bef5f0c10e54223d3b57570fa53f7e867 Reviewed-on: https://code.wireshark.org/review/20216 Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2016-09-23capchild: Support optional 802.11 channel parametersMikael Kanstrup1-1/+5
Document the the 802.11 set channel function and its parameters. Add support for optional parameters. Bug: 12896 Change-Id: I95966f99149aa9c1502d97b5707dcc8c2f5b26e8 Reviewed-on: https://code.wireshark.org/review/17699 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>
2016-09-21capture_sync: use ws_strtou function.Dario Lombardo1-2/+6
Change-Id: Ic128a7f1afd85f6b737392ff76b40d54cbdd8971 Reviewed-on: https://code.wireshark.org/review/17523 Petri-Dish: Dario Lombardo <lomato@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2016-07-30extcap: Use stderr to print error messageRoland Knall1-1/+1
This patch reads out the stderr messages from an extcap utility and displays it to an user. It was tested on Qt but not on GTK, but should work their as well. On Mac OS/X and Windows the child_watch does not behave as it was intended. Therefore in extcap_cleanup, the callbacks are called manually, if and only if, they have not been called already. The reason why it displays two error messages is, that by the time the first one is being displayed, glib has not returned from the spawned process on Linux yet. So there is no way to add the stderr correctly, and putting a handler to stderr into interface_opts will lead to memory errors, cause then the code tries to access memory outside of its protection. Bug: 11892 Change-Id: I2db60dd480fed3e01428b91a705057e4f088bd15 Reviewed-on: https://code.wireshark.org/review/12954 Reviewed-by: Roland Knall <rknall@gmail.com> Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Dario Lombardo <lomato@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-07-29extcap: Restore functionality for optionsRoland Knall1-1/+1
Allow stored options to be restored to their default values. This adds a global cleanup method for extcap and globally defined preference values, which fixes the parameter problem with windows Change-Id: I48e0cf846ef81f4732d652c6a2ad0020db5df08e Reviewed-on: https://code.wireshark.org/review/13741 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Roland Knall <rknall@gmail.com>
2016-06-25wsutil: Move Win32 helper routines from capchildRoland Knall1-143/+1
Move error handling and argument quoting routines from capchild to wsutil, as those methods will be used by extcap_spawn as well. Change-Id: I2c4515fefd5aecad317fcdaefa721734288f792c Reviewed-on: https://code.wireshark.org/review/16123 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: João Valverde <j@v6e.pt> Reviewed-by: Roland Knall <rknall@gmail.com>
2016-06-06*_stdup_printf -> strdup for "single string only" formatting.Michael Mann1-1/+1
Done for performance improvements. This could probably be done in checkAPIs.pl, but this was just a quick manual check with grepping. Change-Id: I91ff102cb528bb00fa2f65489de53890e7e46f2d Reviewed-on: https://code.wireshark.org/review/15751 Reviewed-by: Michael Mann <mmann78@netscape.net> Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Jaap Keuter <jaap.keuter@xs4all.nl>
2016-04-29Win32: Make sure we zero out PROCESS_INFORMATION.Gerald Combs1-2/+4
Make sure we zero our PROCESS_INFORMATION struct before passing it to CreateProcess. Change-Id: Ib42320965bb7b2d37a9fc106d78ace02153e48d2 Reviewed-on: https://code.wireshark.org/review/15154 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-04-28Win32: Pass a mutable string to CreateProcess.Gerald Combs1-2/+12
CreateProcess can modify its second (lpCommandLine) argument. Don't pass it the output of utf_8to16. Constify the return value of utf_8to16. Change-Id: I0d4361396e90c88a4ab2a3f2f0e058230e897fdf Reviewed-on: https://code.wireshark.org/review/15155 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-04-28Revert "Windows: Wait for dumpcap to initialize."Gerald Combs1-31/+2
This didn't fix the test failures. This reverts commit e5f4c5c8a80e2f5970b8c1d4fdfc29ab851f0e6f. Change-Id: I0cff5eff88d2b49806797cef83338dbbace42a4c Reviewed-on: https://code.wireshark.org/review/15135 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-04-27Windows: Wait for dumpcap to initialize.Gerald Combs1-2/+31
As the MSDN documentation says, "CreateProcess returns without waiting for the new process to finish its initialization." Add an SP_INIT sync pipe indicator on Windows and use it in dumpcap to signal to its parent that it has started up. Change-Id: I88a4c158871dbe2dd6eba13434e92c5d4b1c2e4b Reviewed-on: https://code.wireshark.org/review/15132 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2016-04-13Windows: Remove the need for _CRT_NONSTDC_NO_DEPRECATE.Gerald Combs1-4/+4
Replace some function calls with their non-deprecated equivalents so that we can remove _CRT_NONSTDC_NO_DEPRECATE from CMakeLists.txt and config.nmake. Leave _CRT_SECURE_NO_DEPRECATE in place. Removing it failed with 145 warnings and 72 errors. Note that we could probably improve startup performance by using wmem in diam_dict.*. Change-Id: I6e130003de838aebedbdd1aa78c50de8a339ddcb Reviewed-on: https://code.wireshark.org/review/14883 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: Michael Mann <mmann78@netscape.net>
2016-03-01dumpcap: Add support for 802.11ac monitor modesMikael Kanstrup1-1/+2
Add dumpcap support for configuring 80MHz, 80+80MHz, 160MHz monitor modes via nl80211. Change-Id: I2ae8955670c2a9b5051e2223d45ce522459f2c5f Reviewed-on: https://code.wireshark.org/review/13964 Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2016-01-12extcap: Sort extcap interfaces alphabeticallyRoland Knall1-1/+1
The interface list is not sorted at all, leading to a very chaotic list. This sorts it alphabetically, as well as correct a type in extcap_init_interfaces. Bug: 11998 Change-Id: Ib5381a1761e8f07f9ba7996b3e6276da063b3932 Reviewed-on: https://code.wireshark.org/review/13220 Petri-Dish: Roland Knall <rknall@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Roland Knall <rknall@gmail.com>
2015-12-19Allow "capture info data" to not be a singleton.Michael Mann1-1/+2
It was buried as a static variable in capture_info.c, and functions were refactored to allow a pointer to the info_data_t structure to be passed in. TShark and GTK will have their own single (global) copy of the structure, while it opens up Qt to have multiple instances. Change-Id: Ic2d7a2ad574de43f457cb18b194d6bc3fffb6120 Reviewed-on: https://code.wireshark.org/review/12691 Petri-Dish: Michael Mann <mmann78@netscape.net> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-20More spelling fixes found by lintianBalint Reczey1-1/+1
Change-Id: Id218dec9e5a721d6c63fd34962ffe50b6ab8dd56 Reviewed-on: https://code.wireshark.org/review/11946 Reviewed-by: Guy Harris <guy@alum.mit.edu> Reviewed-by: Diederik de Groot <dkgroot@talon.nl> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-18Check for ECHILD, not for "not ECHILD".Guy Harris1-8/+34
That makes the logic a bit clearer (and puts the "unexpected other error" case at the end, where it should be). Put all the errno checks inside an else clause, making it clearer that it runs only if waitpid() returned -1. Add comments, including comments explaining why just driving on after getting EINTR should be OK. Change-Id: Iaa1b151393fcec8b4f5bd560ef913a224400932b Reviewed-on: https://code.wireshark.org/review/11951 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-18Error from waitpid(): Fix Code is unreachableStephan Kappertz1-3/+3
Change-Id: Ib93bd7d62eb16177cfdcb82148c97a64f6e497b4 Reviewed-on: https://code.wireshark.org/review/11939 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-17Win32: Try to fix handle leaks in capture_sync.Gerald Combs1-0/+6
If CreateProcess succeeds, close our child's primary thread handle. As the PROCESS_INFORMATION page at https://msdn.microsoft.com/en-us/library/windows/desktop/ms684873.aspx says, If the function succeeds, be sure to call the CloseHandle function to close the hProcess and hThread handles when you are finished with them. Otherwise, when the child process exits, the system cannot clean up the process structures for the child process because the parent process still has open handles to the child process. Closing the handle immediately doesn't seem to do any harm here, but add a note that we might want to store it and close it later. In sync_interface_stats_open, close our message and data descriptors after calling sync_pipe_wait_for_child. Ping-Bug: 11702 Change-Id: I56e0625fdceb66fba822c2dc83e07d40844329a7 Reviewed-on: https://code.wireshark.org/review/11882 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-11-17Create C handles for pipes before running dumpcap.Guy Harris1-39/+90
If the C handles can't be created, there's no point in running dumpcap. Catch some more possible _open_osfhandle() failures while we're at it. Change-Id: I2b955378705fc932f8d383804e908e95a957be44 Ping-Bug: 11702 Reviewed-on: https://code.wireshark.org/review/11890 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-16Catch failure of _open_osfhandle().Guy Harris1-0/+24
This may at least prevent the crash in bug 11702, by not returning "success" with bogus file handles of -1, if the opens fail due to leaks chewing up all the available slots. More investigation needs to be done to see why we're leaking. Change-Id: I89ecff4b03bca140f05c838e1e2604a03409f803 Ping-Bug: 11702 Reviewed-on: https://code.wireshark.org/review/11881 Petri-Dish: Guy Harris <guy@alum.mit.edu> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-07Clean up includes of unistd.h, fcntl.h, and sys/stat.h.Guy Harris1-8/+0
Have wsutil/file_util.h include them on UN*X, just as it includes io.h on Windows, so we can have a rule of "if you do file operations, include <wsutil/file_util.h> and use the routines in it". Remove includes of unistd.h, fcntl.h, and sys/stat.h that aren't necessary (whether because of the addition of them to wsutil/file_util.h or because they weren't needed in the first place). Change-Id: Ie241dd74deff284e39a5f690a297dbb6e1dc485f Reviewed-on: https://code.wireshark.org/review/11619 Petri-Dish: Guy Harris <guy@alum.mit.edu> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-22Fix retrieval of data link type supported by remote interfaces with ↵Pascal Quantin1-1/+5
authentication Make use of -A parameter when querying data link types supported by a given interface with dumpcap. Ensure to pass the authentication parameters configured for a remote interface when calling capture_get_if_capabilities() Bug: 11366 Change-Id: I4efea615084a82108e4a12a64e8c46817f30a5c6 Reviewed-on: https://code.wireshark.org/review/9690 Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-06-29capchild: fix uninitialized data pointer on failurePeter Wu1-0/+1
Fixes a crash / heisenbug in wireshark-qt on startup: ==26808==ERROR: AddressSanitizer: attempting free on address which was not malloc()-ed: 0x7fff8cf3bf70 in thread T0 #0 0x7f42ce3b66da in __interceptor_free /build/gcc-multilib/src/gcc-5-20150519/libsanitizer/asan/asan_malloc_linux.cc:28 #1 0x842847 in WirelessFrame::setChannel() ui/qt/wireless_frame.cpp:257 #2 0x842bf5 in WirelessFrame::on_channelComboBox_activated(int) ui/qt/wireless_frame.cpp:282 #3 0x84407d in WirelessFrame::timerEvent(QTimerEvent*) ui/qt/wireless_frame.cpp:134 #4 0x7f42ba94ea92 in QObject::event(QEvent*) (/usr/lib/libQt5Core.so.5+0x2b0a92) #5 0x7f42bb6218ea in QWidget::event(QEvent*) (/usr/lib/libQt5Widgets.so.5+0x1948ea) #6 0x7f42bb71c16d in QFrame::event(QEvent*) (/usr/lib/libQt5Widgets.so.5+0x28f16d) #7 0x7f42bb5df62b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/libQt5Widgets.so.5+0x15262b) #8 0x7f42bb5e4d0f in QApplication::notify(QObject*, QEvent*) (/usr/lib/libQt5Widgets.so.5+0x157d0f) #9 0x7f42ba91d57a in QCoreApplication::notifyInternal(QObject*, QEvent*) (/usr/lib/libQt5Core.so.5+0x27f57a) #10 0x7f42ba973b1c in QTimerInfoList::activateTimers() (/usr/lib/libQt5Core.so.5+0x2d5b1c) #11 0x7f42ba974020 (/usr/lib/libQt5Core.so.5+0x2d6020) #12 0x7f42cdde7a16 in g_main_context_dispatch (/usr/lib/libglib-2.0.so.0+0x49a16) #13 0x7f42cdde7c6f (/usr/lib/libglib-2.0.so.0+0x49c6f) #14 0x7f42cdde7d1b in g_main_context_iteration (/usr/lib/libglib-2.0.so.0+0x49d1b) #15 0x7f42ba974cfe in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/libQt5Core.so.5+0x2d6cfe) #16 0x56c8ba in main_window_update wireshark-qt.cpp:128 #17 0xe4b612 in sync_pipe_open_command capchild/capture_sync.c:972 #18 0xe4b823 in sync_pipe_run_command_actual capchild/capture_sync.c:1034 #19 0xe4c590 in sync_pipe_run_command capchild/capture_sync.c:1211 #20 0xe4e9a5 in sync_if_capabilities_open capchild/capture_sync.c:1356 #21 0xe48b7a in capture_get_if_capabilities capchild/capture_ifinfo.c:249 #22 0xdf539a in scan_local_interfaces ui/iface_lists.c:186 #23 0xdf6a65 in fill_in_local_interfaces ui/iface_lists.c:405 #24 0x56e49d in main wireshark-qt.cpp:1154 #25 0x7f42b81c178f in __libc_start_main (/usr/lib/libc.so.6+0x2078f) #26 0x56ba58 in _start (wireshark+0x56ba58) AddressSanitizer can not describe address in more detail (wild memory access suspected). SUMMARY: AddressSanitizer: bad-free /build/gcc-multilib/src/gcc-5-20150519/libsanitizer/asan/asan_malloc_linux.cc:28 __interceptor_free Change-Id: I63744261096b3cfd0eddcf75bcf85103a3f0788d Reviewed-on: https://code.wireshark.org/review/9220 Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-06-10Squelch some type-clash warnings on Windows.Guy Harris1-10/+10
Define WS_INVALID_PID to be the appropriate "there is no process" value. On UN*X, -1 works; the "pid" is actually a HANDLE for the process on Windows, so INVALID_HANDLE is appropriate. Cast HANDLE to intptr_t in the _cwait() call. Change-Id: Ica2d2319f5c95ba41f590776a745fe040fe494d2 Reviewed-on: https://code.wireshark.org/review/8871 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-10Use pid_t on UN*X, and HANDLE on Windows, for the process ID.Guy Harris1-12/+12
This avoids type punning; at least with Xcode 7 beta on El Capitan beta, that produces warnings that get turned into errors. Change-Id: I57f47455b9630f359828c07c92a190b5cb33816f Reviewed-on: https://code.wireshark.org/review/8862 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-09[MSVC 2015] Use intptr_t for "pointer stored as int" to make MSVC happy.Anders1-14/+15
Change-Id: I5dbbea8527a8bb73b17e5a8a5611c3923d82459c Reviewed-on: https://code.wireshark.org/review/8852 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-05-19Fix typo.Guy Harris1-2/+2
Change-Id: Idde2f4771b42714561f65f712e680f9609aeaa57 Reviewed-on: https://code.wireshark.org/review/8535 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-05-19Pass the executable path to CreateProcess(), and end it with ".exe".Guy Harris1-3/+7
On Windows, 1) pass the path of the executable as the first argument to CreateProcess(), which requires that we 2) have that path end with ".exe. Maybe it'll fix the searching-for-dumpcap that showed up in bug 11196. Change-Id: I9d06c07c3513fd42b98d3f8d9a1d2d545f651fe2 Reviewed-on: https://code.wireshark.org/review/8534 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-06Keep a captured-packet count in a capture_session and use that.Guy Harris1-0/+2
Have the count in a cfile_t structure always reflect the actual number of packets that have been read from the file, rather than, when doing a non-update-list-of-packets-in-real-time capture, falsely increasing the count in the cfile_t to reflect the number of packets captured but not yet read. Have the status bar base its captured-packet count on the count in the capture_session structure, and base the "sorry, no packets were captured" message on the count in the capture_session structure, as we're no longer using the count in the cfile_t structure to count anything in the process of a non-update-list-of-packets-in-real-time capture. That way, we preserve the invariant that the "frames" member of a cfile_t will be non-null if the "count" member is non-zero, fixing bug 6217. It also means we can get rid of cf_set_packet_count(), as we only set the count in the capture-file-reading code. Bug: 6217 Change-Id: I72c0e2c07c30782bad777995370b7c19e1460cc2 Reviewed-on: https://code.wireshark.org/review/7950 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-03-25Have a #define for whether the capture buffer size can be set.Guy Harris1-2/+2
It can be set if either 1) this is Windows (where we're assumed to be using WinPcap, which includes calls to set the buffer size) or 2) we have pcap_create() (in which case we also have pcap_set_buffer_size(), at least in a normal libpcap release). Use that rather than testing "defined(_WIN32) || defined(HAVE_PCAP_CREATE)"; that makes it a bit more obvious what's being tested. Change-Id: Id9f8455019d19206b04dd6820a748cb97ae5ad12 Reviewed-on: https://code.wireshark.org/review/7816 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-03-16Fix for waitpid return EINTR sometimes on launch.Vik1-29/+38
The return of EINTR is not exactly a failure of child process but may be because of any number of reasons. Adding logic to retry to get status of child process. Bug: 10889 Change-Id: Ic2de7248cb7bd9c801b917c841ce911fb7c17dcc Reviewed-on: https://code.wireshark.org/review/7669 Petri-Dish: Graham Bloice <graham.bloice@trihedral.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-01-13Consistently use the "g_string_free returns a C string pointer" idiom.Guy Harris1-2/+1
g_string_free(str, FALSE) frees the GString container but not the underlying g_malloc()ed string; instead, it returns a pointer to the g_malloc()ed string. Fix those places that didn't already get the string pointer from g_string_free() to do so rather than manually extracting the string themselves. And fix one place that didn't even need to use a string - it was just scanning a C string without even modifying it. Change-Id: Ibbf4872bf5b9935b9907f539b6edb1013f3053a5 Reviewed-on: https://code.wireshark.org/review/6532 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-20Qt: Add a CaptureFile class.Gerald Combs1-1/+1
Wrap the capture_file struct in a QObject which translates cf_cb_* and capture_cb_* events into signals. Move the global cfile to capture_file.cpp. Don't use a void pointer for the capture file struct. Change-Id: Ic5d5efb4bb1db64aa0247245890e5669b1da723a Reviewed-on: https://code.wireshark.org/review/5885 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-10-17Get rid of unnecessary include of ctype.h.Guy Harris1-1/+0
Change-Id: Ib83e707ebbbb420ce269a652ede6b7366d24240e Reviewed-on: https://code.wireshark.org/review/4792 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-16Fix spelling: cant-->can't, wont-->won't, etcBill Meier1-1/+1
Change-Id: Ia6c3e7a25615bf8e052c3bacf096d76df775c9c2 Reviewed-on: https://code.wireshark.org/review/4126 Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-08-21Extcap Capture InterfaceRoland Knall1-6/+46
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>
2014-07-04Move utility routines for capturing into a libcaputils static library.Guy Harris1-2/+2
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-06-30Move capture.[ch] to libui.Guy Harris1-1/+1
Change-Id: I86e7e781cc9e14abab0374a18b95438529b046f0 Reviewed-on: https://code.wireshark.org/review/2711 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-24For capchild headers, include <capchild/XXX.h>.Guy Harris1-1/+1
Change-Id: I780c69ee637dcd9846756a2e2d6a35baf02d826d Reviewed-on: https://code.wireshark.org/review/2594 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-23Move the routines to talk to dumpcap into a static libcapchild.Guy Harris1-0/+2127
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>