aboutsummaryrefslogtreecommitdiffstats
path: root/wsutil
AgeCommit message (Collapse)AuthorFilesLines
2015-08-18UDP multicast stream dialog.Gerald Combs1-0/+1
Add the UDP multicast stream dialog. Abuse TapParameterDialog a bit more so that we can edit parameters. Remove some unused struct members and an unused function. Change-Id: I962c70344e792f0959527e4bcba8a20bd7e8acf9 Reviewed-on: https://code.wireshark.org/review/10084 Petri-Dish: Gerald Combs <gerald@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-16Run abicheck commands at compile time.Gerald Combs1-2/+5
The CMake dumpbabi targets collectively copy over 800 files. Do that when when we build the actual targets instead of at configure time. Hopefully this will speed up initial CMake runs. Change-Id: I6e4d691e24c73ea05d638a0f897f570541c84e38 Reviewed-on: https://code.wireshark.org/review/10052 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-05[MSVC 2015] Compiler and visual studio version are off by 5 not 6 in MSVCAndersBroman1-2/+17
2015. Change-Id: I5476656789893af2c8aeb5dfe5cf06972fd8bd4b Reviewed-on: https://code.wireshark.org/review/9873 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-07-11terminate readlink resultTobias Stoeckmann1-6/+12
The readlink function does not guarantee to nul-terminate its result string. Therefore, it should be done in wsutil/filesystem.c. Change-Id: Id96533e825a302a1922ce9ac7ee47d5525ac9c39 Reviewed-on: https://code.wireshark.org/review/9597 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-07Next Windows Server version seems to be named Windows Server 2016 nowPascal Quantin1-1/+1
Change-Id: I31fb5495f5e17ccba1578a069ca33448a291923f Reviewed-on: https://code.wireshark.org/review/9539 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-07-06Add a comment.Guy Harris1-1/+11
Why, oh why, are channel numbers used for 802.11? Change-Id: Ie26987dfeaad2ce0ead0eef72339f966aadeeecd Reviewed-on: https://code.wireshark.org/review/9510 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-07-04Mark another function as printf-like.Guy Harris1-1/+1
Change-Id: I2aa13265da1efbf7edfe693c9b434940462ca237 Reviewed-on: https://code.wireshark.org/review/9497 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-30Use ws_fstat64() to determine the size of an open file.Guy Harris2-19/+18
fseek() to the end, followed by ftell(), is a bit of an odd way to get the file size. Use ws_fstat64() instead. Check that the file is a regular file, while we're at it. This means we don't have to check before opening. Bug: 11268 Change-Id: I31ee20dd5568d10541375cf97b286abfc1384d1c Reviewed-on: https://code.wireshark.org/review/9230 Petri-Dish: Guy Harris <guy@alum.mit.edu> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-24Check _MSC_VER is defined before we use itEvan Huus1-1/+1
Otherwise it breaks a bunch of stuff on Linux machines because of the way gcc's preprocessor works (buildbot decryption tests, extcap, etc). Originally added in Ic5360089f96be620fbe99ba4e819e0caa5ca0215 Change-Id: Iad43fa1415aa331ae375771adac0818ea1b99060 Reviewed-on: https://code.wireshark.org/review/9091 Reviewed-by: Evan Huus <eapache@gmail.com>
2015-06-23[MSVC 2015] file_exists() fails on MSVC2105 as file_stat.st_ino gets resetAndersBroman1-1/+2
to zero in the function call if the file does not exist. The general code seems to work with MSVC2015 so use that. Change-Id: Ic5360089f96be620fbe99ba4e819e0caa5ca0215 Reviewed-on: https://code.wireshark.org/review/9070 Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-06-17Qt: fix a crash when closing application under WindowsPascal Quantin1-0/+1
QCoreApplication visits eldritch horrors upon argv on Windows. Keep a local copy for our own processing. --- [ Pascal's original comments ] g6c4ec4a introduced the use of arg_list_utf_16to8 that triggers a crash on my computer when freeing the g_allocated memory. Let's do a similar work but with a memory allocator that does not trigger an exception. Also fix a memory leak in arg_list_utf_16to8 while we are at it. Change-Id: I93d899af20b09c9a5d584a46297f715591502df9 Reviewed-on: https://code.wireshark.org/review/8961 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Gerald Combs <gerald@wireshark.org> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-16Qt: Make sure we have usable command line arguments.Gerald Combs1-0/+8
Call arg_list_utf_16to8 in wireshark-qt.cpp on Windows. Set our default codec in Qt4 to UTF-8 before doing so. Bug: 11276 Change-Id: I8e0afb9523ddb5956d30424b7b7ad7f3ea0838c7 Reviewed-on: https://code.wireshark.org/review/8954 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-06-16Add the wireless toolbar.Gerald Combs4-0/+186
Add the wireless toolbar to the Qt UI. Start adding AirPcap support to ui/80211_utils. Add FCS validation routines to ws80211_utils. Move a bunch of AirPcap routines that require epan from caputils to ui/gtk. They were required for driver key management, which we'll leave to the AirPcap Control Panel in the Qt UI. Move frequency-utils to wsutil. Change-Id: I44446758046621d183f5c2ba9f6526bf01e084f1 Reviewed-on: https://code.wireshark.org/review/8910 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-06-11Replace tabs in files with editor modeline "expandtab"Bill Meier1-1/+1
Change-Id: I4667fd4091c510a4c798f79dae333a07dc42dad6 Reviewed-on: https://code.wireshark.org/review/8880 Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-06-10It's INVALID_HANDLE_VALUE, not INVALID_HANDLE.Guy Harris1-1/+1
Change-Id: I71d18ced0a1bd3438498230b6e647697be8e275d Reviewed-on: https://code.wireshark.org/review/8872 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-10Squelch some type-clash warnings on Windows.Guy Harris1-2/+13
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-10Rename wsutil/process.h to wsutil/processes.h to avoid collisions.Guy Harris2-5/+5
The MSVC rules for searching for headers are a huge barrel of fun; it appears that, for some files that need the MSVC <process.h> to declare getpid(), they're getting our <wsutil/process.h> instead, as that's in the current directory. Rename it to avoid the collision. Change-Id: I88eb70237062fa7957e38d7ff8132524390a6a5c Reviewed-on: https://code.wireshark.org/review/8870 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-10Make sure we include <windows.h> to get HANDLE declared.Guy Harris1-0/+2
Change-Id: I8cba1120f4667864eadeebd48bcdced3a2b71f4c Reviewed-on: https://code.wireshark.org/review/8867 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-06-10Get rid of extra blank line at the end.Guy Harris1-1/+0
Change-Id: Ibe7904b7e01a1b0b81ba20673cd85e08ebf660c2 Reviewed-on: https://code.wireshark.org/review/8863 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 Harris2-0/+44
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-05-17Fix some files to pass the pre-commit hook script.Joerg Mayer1-1/+1
Change-Id: I105bf4e03fcf95cf7541f6377215809759fd933e Reviewed-on: https://code.wireshark.org/review/8502 Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2015-05-16Remove odd charactersGraham Bloice1-5/+4
Change-Id: Ie861badb555e235199549ee27ca374feb6356be6 Reviewed-on: https://code.wireshark.org/review/8482 Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-05-09Define the SHA-1 digest length in wsutil/sha1.h and use it.Guy Harris2-11/+16
Hopefully that'll make it a little easier to make sure that we're not overflowing arrays. Change-Id: I770df045ef9a45fd486c1271ea424b3334bb39d2 Reviewed-on: https://code.wireshark.org/review/8370 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-05-09Rename a variable to avoid a collision with the C++ keyword "template".Guy Harris1-15/+15
Change-Id: I27c5efc5586e97d19ef905921919e1385809eb9b Reviewed-on: https://code.wireshark.org/review/8367 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-05-09Keep everything unsigned there.Guy Harris1-1/+1
This squelches a warning from Sun/Oracle C, and it's the right thing to do in any case, as the LHS of the & operator is unsigned. Change-Id: I824a82d945f8f2535282bbf466dcd65806c6f695 Reviewed-on: https://code.wireshark.org/review/8362 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-30Don't shift signed values left.Guy Harris1-4/+16
That's not valid in C99, at least, if the value is negative or if the shift count is the number of bits in the value - 1, and we might get compile-time or run-time complaints about that. Also, make bit masks unsigned; to quote a run-time error reported in https://www.wireshark.org/lists/wireshark-dev/201504/msg00084.html "left shift of 1 by 31 places cannot be represented in type 'int'", so use type "unsigned int" instead, by shifting 1U rather than 1 left. Change-Id: I62220808058cb93f83329c1916b888a2067d524c Reviewed-on: https://code.wireshark.org/review/8254 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-21Calculate *Peek tagged timestamps in fixed-point.Guy Harris2-26/+71
Add a variant of filetime_to_nstime() that takes a value that's like a FILETIME but in units of nanoseconds rather than tenths of a microsecond, and use that. (It looks as if they might just get FILETIME values from the OS and multiply them by 100, as the nanosecond-FILETIME values appear to be multiples of 100 in the captures I've seen, but they might have chosen nanosecond resolution in case they need to support a higher-resolution time stamp source, so we don't assume that the values will always be a multiple of 100.) Change-Id: If6a1cb2cb673688b042eb113b79cfd267f5454a5 Reviewed-on: https://code.wireshark.org/review/8150 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-20Get rid of trailing white space.Guy Harris1-1/+1
Change-Id: I83ba78a9f153f4a193550c5069182b9203b28edb Reviewed-on: https://code.wireshark.org/review/8144 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-20Have a common routine to convert FILETIME to nstime_t.Guy Harris2-0/+80
We had several copies of that code; put it into a filetime_to_nstime() routine in wsutil, and call that common routine instead. Change-Id: I1eb5579c36c129ff8d23f9212285ab3f63be0f43 Reviewed-on: https://code.wireshark.org/review/8142 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-04-17Make androiddump loadable on OS X.Gerald Combs1-2/+2
Make sure the target location for extcap executables and extcap_dir match on OS X. Set the extcap directory to Contents/MacOS/extcap. The Mac Developer Library documentation doesn't explicitly define "Resources", but examples include data files and not executables. It does state that executables shouldn't go into PlugIns. Make sure we rpathify androiddump. Change-Id: If36c762e2a1991c26e5c01a870deaf191bcf9f94 Reviewed-on: https://code.wireshark.org/review/8093 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-04-07Win32: Restore the versioned plugin installation path.Gerald Combs1-1/+24
Revert parts of g2ef72cb and g7710da4 so that the NSIS installer once again places plugins in $INSTDIR\plugins\$VERSION. This matches the behavior of Autotools and previous Windows installers, and reduces the chances of a version mismatch if the user happens to install a custom plugin. Leave the development plugin path unversioned. Leave the extcap path unversioned for now. Change-Id: I861d4ee12975fba4b642e391871c5e852d92a2fe Reviewed-on: https://code.wireshark.org/review/7976 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Reviewed-by: Graham Bloice <graham.bloice@trihedral.com> Petri-Dish: Graham Bloice <graham.bloice@trihedral.com> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-03-31wsutil: Fix commentRoland Knall1-1/+1
Comment was, although accurate on the subject, not very well formulated Change-Id: I4e6a4bdbc40f75b6bca72de4e71451c441d70d08 Reviewed-on: https://code.wireshark.org/review/7863 Reviewed-by: Roland Knall <rknall@gmail.com> Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-03-25Add support for WIRESHARK_EXTCAP_DIR environment variable on WindowsPascal Quantin1-1/+11
This can be useful when a user cannot modify the Wireshark installation folder (due to UAC restriction for example) This is already supported on Linux / OSX Change-Id: Icfcb43908de1fd8cd415cd31a98219eab1c757c8 Reviewed-on: https://code.wireshark.org/review/7809 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com> Petri-Dish: Pascal Quantin <pascal.quantin@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-03-24Since g2ef72cb, plugins are no more stored in plugins/$VERSION folderPascal Quantin1-48/+2
Also update the custom samples to reflect the latest changes done Change-Id: I2ac865fad1acdef5a5c4d68a155cbdf970c306f5 Reviewed-on: https://code.wireshark.org/review/7805 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>
2015-03-06jsmn: bugfix in jsmn_parse() (found by clang).Dario Lombardo1-4/+6
Change-Id: Id5a9888a3e17c861a9de06343bd99ec0c4aacdce Reviewed-on: https://code.wireshark.org/review/7555 Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-03-03Added JSMN_STRICT that allow a more precise json parsing.Pascal Quantin1-0/+6
Bug: 10977 Change-Id: I725c10d895fdec4530d0761db3ac2659171f2f03 Reviewed-on: https://code.wireshark.org/review/7249 Reviewed-by: Peter Wu <peter@lekensteyn.nl> Tested-by: Peter Wu <peter@lekensteyn.nl>
2015-03-03Add "seed" capabilities to crc16_x25_ccitt (now crc16_x25_ccitt_seed) so we ↵Michael Mann2-3/+3
can remove CRC algorithm calculation in packet-assa_r3.c. Change-Id: I3143800f6ff922a309f5506d9acbc2c4293363b7 Reviewed-on: https://code.wireshark.org/review/7490 Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com> Petri-Dish: Jeff Morriss <jeff.morriss.ws@gmail.com> Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-02-21Remove tvb_ from the names of wsutil mempbrk routines.Guy Harris4-13/+15
Routines that don't take a tvbuff as an argument shouldn't have tvb_ in the name. Change-Id: I3550256551e30b3f329cbbfca71ef27c727d29c0 Reviewed-on: https://code.wireshark.org/review/7302 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-21Rename the slower-but-portable mempbrk to ws_mempbrk_portable_exec().Guy Harris3-6/+6
That parallels ws_mempbrk_sse42_exec(). Change-Id: I1662badc6d1efab5bdd827f29bbad3712464ec43 Reviewed-on: https://code.wireshark.org/review/7301 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-21Move declarations of internal ws_mempbrk routines to a separate header.Guy Harris5-9/+35
Put the internal routines, which are only to be used by the implementation of the mempbrk functions, to a separate header file, so that they're not exported even in the standard header file. Change-Id: I92c39b138de3e4f9da1b102210b39d50728e2fd6 Reviewed-on: https://code.wireshark.org/review/7300 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-20Just have init_progfile_dir() take a void pointer.Guy Harris2-5/+4
dladdr() takes a void * as a code pointer; have init_progfile_dir() do so, and do the casting in the calls. We don't care about the signature of the function whose address we're passing, we just want to pass a pointer to *something* in the main program. Change-Id: I9372620a97b0eb53c2bb3c0c41a238b4408f3709 Reviewed-on: https://code.wireshark.org/review/7270 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-19Check whether emmintrin.h can be used *without* -msse4.2.Guy Harris1-14/+26
If not, we can't use SSE 4.2, as we need to be able to include it in files that use tvb_pbrk_compile()/tvb_pbrk_exec() even if they're not compiled with -msse4.2 (most files aren't, as we need to isolate SSE 4.2 instructions to a small bit of code that uses them only if running on hardware that supports them). Change-Id: I62262a3c45fa14e200967916ac0ffc283f8e322c Reviewed-on: https://code.wireshark.org/review/7246 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-18Not all compilers support turning of "format=".Guy Harris1-2/+2
The clang on my machine doesn't; just do "format" instead. (The best way to handle this may be to do the formatting ourselves, so that we can get thousands separators on *all* platforms, regardless of whether its printf formatter supports it.) Change-Id: I1948d1799688cb3cf1d7b0de0696c09f6bf23f1c Reviewed-on: https://code.wireshark.org/review/7241 Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-18Suppress a printf grouping warning.Gerald Combs1-0/+3
Suppress warning: ISO C does not support the ''' printf flag [-Wformat=] We verify that we *do* support it via HAVE_GLIB_PRINTF_GROUPING. Change-Id: Iedcf1d1856238e05babde5fe8ec23f64fbf2cdcf Reviewed-on: https://code.wireshark.org/review/7238 Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-18Fix various warnings in wireshark-qt.cpp.Gerald Combs2-2/+3
Squelch warnings due to (char *) casts. Use "include_directories(SYSTEM..." in CMakeLists.txt so that we don't get pedantic warnings about things we can't easily fix such as QList loop optimizations. Not sure if there's an easy way to do this in Autotools. Pass get_gui_compiled_info to init_progfile_dir. C++ don't have to show you any stinkin' ::main. warning: ISO C++ forbids taking address of function ‘::main’ [-Wpedantic] Change-Id: If1c77284ab0d1b4786bce4e926a4109dd9b1ae34 Reviewed-on: https://code.wireshark.org/review/7207 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-17Added JSON native file support.Dario Lombardo4-0/+509
libjsmn has also been moved from epan/ to wsutil/ to make it visible from wiretap. Change-Id: I59abb3419acb1baa83194b38152d3651ed5c123c Bug: 10878 Reviewed-on: https://code.wireshark.org/review/6716 Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2015-02-14Try to fix diagnostic suppression.Gerald Combs1-19/+20
Test the compiler for "-Wpedantic" instead of "-pedantic" since DIAG_OFF and DIAG_ON expect a "-W" flag prefix. Be more strict about the compiler versions that DIAG_OFF and DIAG_ON support. Change-Id: I9304c544912102f1719b79e9250f97b40a324430 Reviewed-on: https://code.wireshark.org/review/7123 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-14Fix diagnostics macros and squelch a gcc warning.Gerald Combs1-1/+1
Both clang and gcc define __GNUC__. Make sure we account for that when defining diagnostic macros. Use DIAG_OFF + DIAG_ON to suppress gcc -pedantic warnings about frame_data. Get rid of packet_char_enc casts. Change-Id: Idbcc61bcdb35c1d20f185461c69451dcdf73bae9 Reviewed-on: https://code.wireshark.org/review/7106 Petri-Dish: Gerald Combs <gerald@wireshark.org> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-14We use GLib's directory-reading routines, so we don't need <dire[cn]t.h>.Guy Harris2-12/+0
Change-Id: Id86e5d6d0ab24adb1bfff0688f33a40f2fdaed8d Reviewed-on: https://code.wireshark.org/review/7108 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-02-13Replace tabs by spaces when editor modelines has "expandtab"Bill Meier1-1/+1
Change-Id: If7a6f2697be732ae4f94ed8b845fd293c32510f7 Also: tabs-stops should be 8 Reviewed-on: https://code.wireshark.org/review/7100 Reviewed-by: Bill Meier <wmeier@newsguy.com>