Commit Graph

2738 Commits

Author SHA1 Message Date
Gerald Combs 019c3af0b1 1.99.5 → 1.99.6.
Change-Id: Iff642606bdb9858dc54b90abe02bf1572f44fc25
Reviewed-on: https://code.wireshark.org/review/7766
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-03-20 00:53:49 +00:00
Gerald Combs cc7e565711 1.99.4 → 1.99.5.
Change-Id: Ifa1a57ac2db5d921d9b53dbe997cfa1916720c26
Reviewed-on: https://code.wireshark.org/review/7759
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-03-19 19:16:02 +00:00
Gerald Combs cac102eee3 Change a lot of http:// URLs to https://.
Most of our sites are now HTTPS-only. Update URLs accordingly. Update
other URLs while we're at it. Remove or comment out dead links.

Change-Id: I7c4f323e6585d22760bb90bf28fc0faa6b893a33
Reviewed-on: https://code.wireshark.org/review/7621
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-03-10 19:30:50 +00:00
Gerald Combs 89270fbe0f 1.99.3 → 1.99.4.
Change-Id: I96953b6ca34140972a783c3066614399981ca1e2
Reviewed-on: https://code.wireshark.org/review/7549
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-03-05 20:15:36 +00:00
Gerald Combs fb03d49fca Add CMake SOVERSIONs to make-version.pl.
Change-Id: Ifd011288ca23263738ca50842d59a23cc25e7952
Reviewed-on: https://code.wireshark.org/review/7532
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-03-04 20:33:08 +00:00
Michal Labedzki 23b07cb3ca Set packet encapsulation for HCIDUMP captures
Change-Id: I2a523694a38b6fe296b6dbceb5a00e4202364e99
Reviewed-on: https://code.wireshark.org/review/7523
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2015-03-04 16:03:33 +00:00
Guy Harris 0f3ae32290 Call TIMEDEFVn macros in all PACKET_DESCRIBE() macros.
Create TIMEDEFV10() and, for it and for V20, V21, and V22, undefine the
ones used for the read routine and define dummy ones for the read-seek
routines (as those record formats have relative, not absolute, times).

Have all of them set presence_flags.

That way:

1) if we *can* set the time stamps in the seek-read routine, we do;

2) we always set presence_flags in read and seek-read routines.

Change-Id: I837507245e8a0cbc68c7c5fd8365f474d085488e
Reviewed-on: https://code.wireshark.org/review/7445
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-03-01 03:04:06 +00:00
Guy Harris 65303efe4d Remove some unneeded includes of <sys/time.h>.
Change-Id: I9e4e6efa9f8c7dbff7627f8d5fc3278ab383618d
Reviewed-on: https://code.wireshark.org/review/7441
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-28 04:59:08 +00:00
Guy Harris 3b235615bf Don't use struct timeval if we only care about seconds.
time_t suffices in that case.

Change-Id: Ica7a79fb6f8c7cc7fb6decd5fcd391dccfdb3fc6
Reviewed-on: https://code.wireshark.org/review/7440
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-28 03:50:26 +00:00
Guy Harris 60cc2e0e93 Clean up timestamp handling.
Use nstime_t rather than struct timeval when we want
seconds-and-fractions, so that, when writing the file, we can handle
nanosecond-resolution time stamps.  Calculate the relative time stamp as
a 64-bit integer rather than using floating-point.

Use time_t rather than struct timeval if we only want seconds.

Have the routines that write out 16-bit and 32-bit numbers convert them
to little-endian themselves, rather than having to be passed a
little-endian number.

Have a routine that writes out 48-bit values in little-endian order, and
use that to write out packet time stamps.

Change-Id: Ia6e047079e48915647502178e0a1c61177010c62
Reviewed-on: https://code.wireshark.org/review/7438
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-28 02:23:49 +00:00
Guy Harris 0692d75455 Make the V10 path a bit more like the other paths.
Provide {FULL,PART}SIZEDEFV10 macros, similar to what's provided for the
other versions, containing the code to set the packet length and
captured data length, and use the TRACE_V10_REC_LEN_OFF() macro directly
after that to set the various length and offset values in the
pseudo-header.

Change-Id: I3513371057601b44821d89ebaa7565ab370a67f5
Reviewed-on: https://code.wireshark.org/review/7393
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 21:05:26 +00:00
Guy Harris 9dfade3494 Make the _offset values static constants.
No need to export them outside this file, and making them constants
might convince the compiler not to bother fetching their values from
memory when referring to them.

Change-Id: Ib8605bf0bb9091721a51827c45fe75d19a15ba26
Reviewed-on: https://code.wireshark.org/review/7378
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 08:12:28 +00:00
Guy Harris 6b6c11c3c3 Have a PACKET_DESCRIBE() for V30's seek-read routine.
That way it'll set the captured length and reported length the same way
it's done in the read routine.

Change-Id: I8b1f2d0d8fa688f44b6f61f16dc2e21b5648fc12
Reviewed-on: https://code.wireshark.org/review/7376
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 06:12:23 +00:00
Guy Harris 98e8d527c9 Make the V10 PACKET_DESCRIBE() macro a little more like the others.
Rename the V10 PACKET_DESCRIBE()'s "fpp" argument to "type", and have it
declare the pointer variable.

Change-Id: I3ac52ebdef0aec7bc95052277537185132886b57
Reviewed-on: https://code.wireshark.org/review/7374
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 05:23:56 +00:00
Guy Harris 0856de5b5f Rename the "type" argument to V10's PACKET_DESCRIBE() to "ver".
Move it in the argument list, and use it instead of a hard-coded 10
(even though it's always passed as 10), to match the other
PACKET_DESCRIBE() macros.

Change-Id: Idd0a23a58cc6bb0d2de799b039db776d279cc03e
Reviewed-on: https://code.wireshark.org/review/7372
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 04:25:43 +00:00
Guy Harris 825a833763 Call the version-number argument to GENERATE_CASE_xxx() "ver".
The name "type" is thrown around to mean both a version number and a
part of a structure member, and some other macros use "ver" for the
version number; try to make things a little less inconsistent.

Change-Id: I61405cf41cca43fe607154af7498944c5ec0ef11
Reviewed-on: https://code.wireshark.org/review/7370
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 04:16:17 +00:00
Guy Harris fc6df642be Use FULL/PART as an argument to all PACKET_DESCRIBE() macros.
Makes the various flavors of that macro more similar.

Change-Id: Ie95ee8db0b226458146b055b54b7d61835f1e508
Reviewed-on: https://code.wireshark.org/review/7368
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 03:13:02 +00:00
Guy Harris 22b4b6321b Get rid of an unused argument to PACKET_DESCRIBE().
Change-Id: Ic2037f5bf7eb43f93ba39f91bca3fc267c8fb850
Reviewed-on: https://code.wireshark.org/review/7366
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 03:00:39 +00:00
Guy Harris 04b6b56228 Give all PACKET_DESCRIBE() macros a HEADERVER argument.
A bit of regularization.

Change-Id: I60e0bd50891e1ba3e9c40f8d1d14d63534e08138
Reviewed-on: https://code.wireshark.org/review/7364
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 00:15:54 +00:00
Guy Harris 08c85ecc3c Call header version arguments HEADERVER.
Use that rather than TYPE or acttype (to indicate that it's a header
version number to use as the "xxx" in NSPR_HEADER_VERSIONxxx, and to use
the same name throughout).

Change-Id: I14cfc819e44ce4388c27d521a1256dec8d80df2e
Reviewed-on: https://code.wireshark.org/review/7361
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-25 00:07:15 +00:00
Guy Harris c4b76a94ef More indentation cleanups.
Change-Id: Ia448727e6340723800d92097f0ef7f3582ef6340
Reviewed-on: https://code.wireshark.org/review/7359
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 22:32:46 +00:00
Guy Harris 0dc5edfe95 Clean up indentation.
Change-Id: I80f8c5c642ebc1fe0169e39c1af9584cfbb89d1a
Reviewed-on: https://code.wireshark.org/review/7357
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 22:30:14 +00:00
Guy Harris 37c09e35b0 Pull more into PACKET_DESCRIBE() for the V10 seek-read routine.
Just like the read routine.

Change-Id: If6bd98bea15f1c8dc7454a5dac0ea57920bddc8c
Reviewed-on: https://code.wireshark.org/review/7355
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 22:22:42 +00:00
Guy Harris 592ee9e83b Swallow up more V10 stuff into PACKET_DESCRIBE().
That makes it even more like V2x and V3x and slightly less unclear.

Change-Id: I798ead123ba6418be0252067773a951390e26ce8
Reviewed-on: https://code.wireshark.org/review/7353
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 21:56:56 +00:00
Guy Harris 2a31311f81 Have PACKET_DESCRIBE() for V10.
Have it set the record type and initialize the presence bits.

That makes it a bit more like V2x and V3x, and makes the code slightly
less unclear.

Change-Id: Ibfbe2143b24a68c3fa3f576616fde81918b01feb
Reviewed-on: https://code.wireshark.org/review/7351
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 21:22:51 +00:00
Guy Harris fe5aea7c62 Move the setting of rec_type.
This makes the code slightly less unclear.  (You are in a maze of twisty
little C macros, all different.)

Change-Id: I9f1bcc7a9a1a7afe87ede8b1ba513e3d8e53845c
Reviewed-on: https://code.wireshark.org/review/7349
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 21:02:54 +00:00
ranushekhar c466d401d9 NS Trace (NetScaler Trace) file format is not able to export specified packets
Bug: 10998
Change-Id: Ic2c5ad5b01be3e0c39b1e93badcc4f2246c420fe
Reviewed-on: https://code.wireshark.org/review/7327
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-02-24 06:37:10 +00:00
Daniel Mack a6f4bdb874 pcap-common: fix build error with gcc5
gcc5 complains about the issue below, so add a trivial fixup.

  CC       libwiretap_la-pcap-common.lo
pcap-common.c: In function 'pcap_byteswap_nflog_pseudoheader':
pcap-common.c:1290:30: error: logical not is only applied to the left hand side of comparison [-Werror=logical-not-parentheses]
  if (!(nfhdr->nflog_version) == 0) {
                              ^
cc1: all warnings being treated as errors

Change-Id: I9f5b090ffd564f203cc3fb4ff302f2e4752865f0
Reviewed-on: https://code.wireshark.org/review/7336
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-24 00:26:41 +00:00
Guy Harris 99ff8baed6 Use file extensions even more as a heuristic.
If a file type has a list of "typical" extensions, and a file has an
extension that is *not* one of those extensions, the file is unlikely to
be of that type.

For files that have extensions, after we try the heuristics that have a
list of "typical" extensions that includes the file's extension, try the
heuristics that have no such list, and after that try the heuristics
that have such a list but where the list *doesn't* include the file's
extension.

This fixes, for example, some cases where non-PacketLogger files were
getting identified as PacketLogger files.

Change-Id: I2d8c3b983ed6ccd692beb888668f77eb9b5f437b
Reviewed-on: https://code.wireshark.org/review/7315
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-22 19:25:07 +00:00
Michal Labedzki 8e43698b52 Set phdr encap for pcap file
Change-Id: Id600b395d6fd2711c9b392a60454e5bd9a3eb465
Reviewed-on: https://code.wireshark.org/review/7288
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2015-02-21 17:19:51 +00:00
Guy Harris 7263af87c6 Eliminate some DIRTY_ file lists.
We don't want to encourage people to add to those lists, we want to
encourage people to subtract *from* those lists (either by fixing
warnings or, if an infelicitous API, or an infelicitous declaration of
an API on some platforms, or a program generator that doesn't take
sufficient care to avoid warnings - I'm looking at *you*, Flex - makes
it impossible to fix without introducing other problems, using the
DIAG_OFF()/DIAG_ON() macros if possible).  Eliminate the empty lists, to
make it harder to fill them up again.

Change-Id: I298d07952c0cb1842a4ea71ba7e07c68e94a04e9
Reviewed-on: https://code.wireshark.org/review/7229
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-18 08:04:32 +00:00
AndersBroman 9150a928d5 Add missing json.h
Change-Id: Ib1d67fdcc016532ab6e4140df357a6d0dd5cf09d
Reviewed-on: https://code.wireshark.org/review/7193
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-02-17 12:15:17 +00:00
Dario Lombardo bd911096bd Added JSON native file support.
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-17 11:08:51 +00:00
Guy Harris fea325d2ba Handle DLT_LOOP differently from DLT_NULL.
That's a little cleaner, and lets us preserve the LINKTYPE_ value for
DLT_LOOP captures.  ("Preserve" here doesn't mean "write files with a
link-layer header type of 12", as that's ambiguous; we write it with a
link-layer header type of LINKTYPE_LOOP, i.e. 108.  If programs on
OpenBSD don't recognize that as DLT_LOOP, that's a bug in OpenBSD's
libpcap or in the program.)

Change-Id: I48a2e04aed41c013823ffb5c588d2a8e8b376e15
Reviewed-on: https://code.wireshark.org/review/7143
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-15 22:47:03 +00:00
Guy Harris 1917023fc1 Don't base interpretation of LINKTYPE_ values on DLT_ value definitions.
Instead, explicitly check for particular build platforms.  This means
that the interpretation of the link-layer type values with different
meanings on different platforms won't be dependent on the particular
version of libpcap with which Wireshark happens to be built, and also
means that we don't have to fix pcap-common.c to include pcap.h or
net/bpf.h.

Fix some comments while we're at it.

Bug: 10956
Change-Id: If331d9b92081fb0bdf416620fb2ad8dce57dea6b
Reviewed-on: https://code.wireshark.org/review/7140
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-15 22:04:23 +00:00
Bill Meier 9c866ff971 Replace tabs by spaces when editor modelines has "expandtab"
Change-Id: If7a6f2697be732ae4f94ed8b845fd293c32510f7
Also: tabs-stops should be 8
Reviewed-on: https://code.wireshark.org/review/7100
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-02-13 17:34:53 +00:00
Gerald Combs 52b4059b11 1.99.2 → 1.99.3.
Change-Id: Id03d0243f20b33873a92be7444b61952d0b18638
Reviewed-on: https://code.wireshark.org/review/6956
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-02-04 21:03:24 +00:00
Gerald Combs a835c85e3d Pcapng: Don't fetch past the end of a GArray.
Due to an off-by-one error an invalid ISB interface ID could make us
fetch past the end of a GArray. Found using American Fuzzy Lop.

Bug: 10895
Change-Id: I7d4049ad7a386ae7e8013b8e741d54a31f353f1f
Reviewed-on: https://code.wireshark.org/review/6798
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-01-26 20:40:01 +00:00
Gerald Combs cf142c6b67 Get Wireshark to compile with afl-gcc.
Fix errors found by American Fuzzy Lop's afl-gcc
(http://lcamtuf.coredump.cx/afl/):

peektagged.c:
error: 'fileVersion' may be used uninitialized in this function

packet-h223.c:
error: variable 'circuit_id' might be clobbered by 'longjmp' or 'vfork'

wslua_proto.c:
error: variable 'd' might be clobbered by 'longjmp' or 'vfork'

wslua_proto.c:
error: variable 'dt' might be clobbered by 'longjmp' or 'vfork'

Change-Id: Idd74a3ad7b236d3a8756c1e7e917b1c74143f381
Reviewed-on: https://code.wireshark.org/review/6767
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-01-24 19:14:38 +00:00
Guy Harris 62ea3194ed PacketLogger files can be big-endian or little-endian.
Bug: 10861
Change-Id: Iedb248aa4a96e65bb525ba6475dc767e5dfefbe0
Reviewed-on: https://code.wireshark.org/review/6579
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-17 02:59:59 +00:00
Graham Bloice 528a857258 Fix CMake generation and use of Windows .rc files
CMake now generates local copies of .rc files for all the Windows
components and uses the files in the build of the components.

The .rc.in files that include an icon were modified to allow the icon
path to be set by CMake.  The path is removed for nmake builds.

Updated build architecture detection, required for wireshark.manifest.in

Change-Id: I7b1ff43050e9b0efb861d1041636fb4aef49a4f8
Reviewed-on: https://code.wireshark.org/review/6482
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2015-01-11 20:22:32 +00:00
Martin Mathieson a190c936d7 Remove unnecessary includes from wiretap folder
Change-Id: I10d3057801673bc1c8ea78f144215869cc4b1851
Reviewed-on: https://code.wireshark.org/review/6217
Petri-Dish: Martin Mathieson <martin.r.mathieson@googlemail.com>
Reviewed-by: Martin Mathieson <martin.r.mathieson@googlemail.com>
2015-01-03 21:06:36 +00:00
Bill Meier 5c529c95c5 Add '*.nativecodeanalysis.xml' to 'clean' targets
Change-Id: I90dbf0b31fc737150a01533763a7869b34c68cb6
Reviewed-on: https://code.wireshark.org/review/6220
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-01-02 01:45:16 +00:00
Bill Meier 454fd6e9eb Add "Editor modelines"; Adjust whitespace as needed.
Change-Id: Ic5a5acb0f36d3aa144edbfb1ae71097b18426db4
Reviewed-on: https://code.wireshark.org/review/6216
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2015-01-02 00:49:09 +00:00
Alexis La Goutte 24c076f143 pcapng (wiretap): fix Copy-paste error (CID 1158591 & 1158592)
Change-Id: I117c007c0a8be573bb3069fc44a490e6e5d2fef8
Reviewed-on: https://code.wireshark.org/review/6167
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-12-31 17:11:08 +00:00
Guy Harris 51e58698d2 Get rid of packet data members of header structures.
Instead, have a special macro using the size of the header structure to
find the offset of the packet data.

This means that:

	1) you don't have to throw "-{size of data member}" into the
	   macros that calculate the sizes of the header structures;

	2) you don't have a bunch of randomly-chosen data field sizes;

	3) you don't have sizes of 0, which cause problems with
	   compilers that don't support zero-length arrays;

	4) you don't have some apparently-incorrect "-{size of data
	   member}" values (if they're correct, please fix the structure
	   definitions).

Change-Id: Iea368b83fa2d184bd6df453d51756e4749714e2c
Reviewed-on: https://code.wireshark.org/review/6082
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-27 20:56:42 +00:00
Guy Harris e7d2c8dad5 Get rid of some accidentally-checked-in debugging stuff.
Change-Id: Iea54df783cdff2424d23ecfba8f219dae42d0c83
Reviewed-on: https://code.wireshark.org/review/5888
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-19 22:08:21 +00:00
Michal Labedzki f5cd21543d Bluetooth: Add generic Bluetooth dissector
Bluetooth dissector is used to add ability to filter all bluetooth
payload from capture files (there are many transport like:
hci_h4, hci_h1, hci_usb, hci_mon, btle). Also it is used to placeholder for
all data tree used to store additional informations like bd_addrs, names, etc.
Finally it is used to be one point for Bluetooth
Endpoints/Conversation filtering what is enabled now.

Also add Master/Slave Role and Connection Mode tracking.

Change-Id: I67048080fb8ee16fa0f4ec429c1257de81ddd737
Reviewed-on: https://code.wireshark.org/review/5771
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-12-18 11:03:05 +00:00
Guy Harris 0885d29451 Make sure err_info is always set, and print it iff it's non-null.
Change-Id: Ib5c600c491a3d8adcfa91c00fa9445283610545b
Reviewed-on: https://code.wireshark.org/review/5830
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-18 04:04:19 +00:00
Guy Harris aa27e665b1 Rename WTAP_ERR_REC_TYPE_UNSUPPORTED to WTAP_ERR_UNWRITABLE_REC_TYPE.
That indicates that it's a problem specific to *writing* capture files;
we've already converted some errors to that style, and added a new one
in that style.

Change-Id: I8268316fd8b1a9e301bf09ae970b4b1fbcb35c9d
Reviewed-on: https://code.wireshark.org/review/5826
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-18 00:32:14 +00:00
Guy Harris 51522b3372 Handle "I can't map this for that file format" better.
For cases where record (meta)data is something that can't be written out
in a particular file format, return WTAP_ERR_UNWRITABLE_REC_DATA along
with an err_info string.

Report (and free) that err_info string in cases where
WTAP_ERR_UNWRITABLE_REC_DATA is returned.

Clean up some other error reporting cases, and flag with an XXX some
cases where we aren't reporting errors at all, while we're at it.

Change-Id: I91d02093af0d42c24ec4634c2c773b30f3d39ab3
Reviewed-on: https://code.wireshark.org/review/5823
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-18 00:03:26 +00:00
Guy Harris ddcc2aee3d Rename WTAP_ERR_UNSUPPORTED_FILE_TYPE to WTAP_ERR_UNWRITABLE_FILE_TYPE.
That makes it clearer what the problem is, and that it should only be
returned by the dump code path, not by the read code path.

Change-Id: I22d407efe3ae9fba7aa25f08f050317549866442
Reviewed-on: https://code.wireshark.org/review/5798
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-17 08:31:49 +00:00
Guy Harris dbdcae80ba Rename WTAP_ERR_UNSUPPORTED_ENCAP to WTAP_ERR_UNWRITABLE_ENCAP.
That makes it clearer what the problem is, and that it should only be
returned by the dump code path, not by the read code path.

Change-Id: Icc5c9cff43be6c073f0467607555fa7138c5d074
Reviewed-on: https://code.wireshark.org/review/5797
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-17 06:41:45 +00:00
Guy Harris 40f69b2778 Use WTAP_ERR_UNSUPPORTED for input file stuff we can't handle.
WTAP_ERR_UNSUPPORTED_ENCAP means "I can't *write* that particular
encapsulation type to a file of this format", which mainly means "that
file format simply can't handle packets of that type";
WTAP_ERR_UNSUPPORTED means "this file can't currently be supported by
Wireshark, as there's some feature in the file - such as a file or
per-packet encapsulation type - that we don't (yet) handle".

Change-Id: I53cadf9913d20efb2bccb29f61877b71d53807be
Reviewed-on: https://code.wireshark.org/review/5794
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-17 06:22:57 +00:00
Guy Harris 625ba02b69 Clean up handling of files without a known encapsulation.
Fail with an "unsupported encapsulation" error for MTP2 and SSCOP,
rather than just returning "unknown encapsulation", and fail with that
if the encapsulation isn't filled in as well, although that might be a
deeper problem.

(Not that people should be handing text output files from K12 analyzers
anyway - they should hand us RF5 files and, if we can't handle their
file, file a bug and give us the file so we can further reverse-engineer
the format.)

Change-Id: I6bbd5f81787d69bd3b41eaedf2893d179f11ad6a
Reviewed-on: https://code.wireshark.org/review/5792
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-17 05:35:58 +00:00
Guy Harris fbf08cffec Nothing to free there.
pcapng_read_block() never sets *err_info if it returns
PCAPNG_BLOCK_NOT_SHB - that happens on an EOF, a short read, or on a
successful read of something that doesn't look like an SHB.

Change-Id: I23ad6aa1c95d800b068a798a4aad1d70d07ac281
Reviewed-on: https://code.wireshark.org/review/5686
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-09 04:04:54 +00:00
Guy Harris 3d95c623a8 Don't try to look in a non-existent hash table.
We only create hash tables if somebody puts a handler in one, so we need
to check whether the hash table exists first, to avoid run-time warnings.

Change-Id: I739d2d808935e651b11bd44b258f168a42ca4b7c
Reviewed-on: https://code.wireshark.org/review/5683
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-09 01:30:41 +00:00
Guy Harris d5f771cfd8 Use correct expression in a "length too short" message.
Doesn't change the behavior of the code, but makes it more consistent.

Change-Id: I6f07fbbb4c7d14d8a46ecfd1c419d951c356fd77
Reviewed-on: https://code.wireshark.org/review/5672
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-08 19:41:13 +00:00
Guy Harris 212ba58fdc Add checks for non-null-terminated strings.
Change-Id: Iaad2d2f76e5d554800ba2c79d5c01f4b9da6fa0b
Reviewed-on: https://code.wireshark.org/review/5660
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-07 20:18:26 +00:00
Guy Harris 6d4c0edc06 Don't go past the end of the "extra data".
The "extra data", according to the RF5 API manual I have, is "hardware
parameters", so change some names.

Report an error if the variable parts of the configuration event record
run past the record length.

Report an error if the hardware parameters are too short.

For the purportedly DS0 hardware parameters, don't assume they'll be
long enough for the mask; they might not be.

Change-Id: Ib63d042e4ede32216fb474c4ecdba84db1387abc
Reviewed-on: https://code.wireshark.org/review/5638
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-06 04:54:31 +00:00
Guy Harris bb005704e2 Fix some copy-and-pasteos in error messages.
Change-Id: I1fe3434e69a08aae3d7413067275b3d7ee1552f5
Reviewed-on: https://code.wireshark.org/review/5634
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-05 23:47:43 +00:00
Guy Harris 0cf2f74814 Squelch another compiler warning.
Change-Id: Ib79bb30e67dacdda2e87f39438c4a836632d55bd
Reviewed-on: https://code.wireshark.org/review/5552
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-01 01:03:46 +00:00
Guy Harris cc0b083f30 Squelch a compiler warning.
Change-Id: Ic904f9b8551353192e872cb896f198572da83e27
Reviewed-on: https://code.wireshark.org/review/5551
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-01 01:00:49 +00:00
Guy Harris 846bb53948 Add a Buffer to wtap_pkthdr to hold file-type-specific packet metadata.
For example, this can be used for pcap-ng options not mapped to
file-type-independent metadata values.

Change-Id: I398b324c62c1cc1cc61eb5e9631de00481b4aadc
Reviewed-on: https://code.wireshark.org/review/5549
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-12-01 00:31:03 +00:00
Guy Harris 6c7af1db58 Change some names to make them the same in multiple lists.
Change-Id: I20ca39f69052b4134147577ae5be74c05b4d5e48
Reviewed-on: https://code.wireshark.org/review/5543
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-30 19:28:16 +00:00
Guy Harris 121d9ae6aa Note that this document is a bit old.
Change-Id: Ie9a45acf1d3bc116d73b6430b058ffdcabead42b
Reviewed-on: https://code.wireshark.org/review/5514
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-11-27 08:16:52 +00:00
Michał Orynicz 1cde318117 Fix for very big pid and tid numbers in logcat_text
There can be no space after pid colon if tid is big enough
in logcat long format.

Change-Id: I8e03e78c88e4bef1a5fdb3a04b77f58fa7d055bc
Reviewed-on: https://code.wireshark.org/review/5411
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-11-21 07:50:40 +00:00
Michał Orynicz 1d8673c0df Move text logcat regex strings to shared header
To avoid further duplication of work and bugfixing,
move regex strings to wiretap/logcat_text.h and include
this file in epan/dissectors/packet-logcat-text.c

Change-Id: I82773cda0e3240844139b104c68738ec82788014
Reviewed-on: https://code.wireshark.org/review/5410
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-11-21 07:45:58 +00:00
Michał Orynicz 6fbcc18742 Fix text logcat for changes in android L
In L, in line "-- beginning of /<buffer>" the "/" was removed.
This commit accomodates text logcat to that change.

Change-Id: I4cbfadf5a8169589f2848ce1a5793cea593ba459
Reviewed-on: https://code.wireshark.org/review/5405
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-11-20 11:06:46 +00:00
Stig Bjørlykke 39b0c2def0 Wiretap: Added file_seek SEEK_END support.
This is needed for Lua File:seek("end").

Change-Id: I28fb23f2f29ca8083c77bf065db8816e039ae5a1
Reviewed-on: https://code.wireshark.org/review/4722
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2014-11-19 08:41:34 +00:00
Balint Reczey 250c1ecb35 Fix typo: Intrustion -> Intrusion
Change-Id: Iea95556a4d77ff54d46a505903e50134f51d563a
Reviewed-on: https://code.wireshark.org/review/5082
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-11-02 19:36:37 +00:00
Guy Harris c0a4a91ec2 Dataflow analysis is hard, let's go shopping!
Another case where the compiler didn't figure out that the variables
aren't used if they're not set.

Change-Id: I70bfb06c6d86d41a266a087ece971c40cd697ee9
Reviewed-on: https://code.wireshark.org/review/4994
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 09:03:51 +00:00
Guy Harris fdb3ea591b Squelch some used-but-not-set warnings (one legitimate, others not).
Also, we don't care how much tagged value data we've read, we just care
whether we've read any or not (EOF reading the first one means "end of
file", EOF reading any of the subsequent ones means "short read").

Change-Id: I2edc54494967b3a88bcc2c79d97eedfded00150d
Reviewed-on: https://code.wireshark.org/review/4993
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 08:58:46 +00:00
Guy Harris aac8daad57 Use correct variable.
To check whether data_rate_or_mcs_index is set, check
saw_data_rate_or_mcs_index; we might see a value of 0 for that field
(it's a valid MCS index), so we can't use it as an out-of-band value
meaning "not set".

Change-Id: I75d7fdb4a90836538c82f56f2afb05c0603278a5
Reviewed-on: https://code.wireshark.org/review/4991
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 07:59:59 +00:00
Guy Harris d2ee010a39 Extract the center frequency from Peek tagged files.
Change-Id: I44bc278f563264ca20f0250fc3376b6741bdcbfa
Reviewed-on: https://code.wireshark.org/review/4990
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 07:07:21 +00:00
Guy Harris ec33c3dfe7 Support the bandwidth and "short GI" fields from Peek tagged files.
Add a number of fields corresponding to components of the radiotap MCS
field, add presence bits for them, and set and dissect the fields
supported by Peek tagged files.

Change-Id: I3fc801a3bc180e1c174d074a794af0f3d338f249
Reviewed-on: https://code.wireshark.org/review/4989
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 06:53:01 +00:00
Guy Harris aff087af98 Handle the MCS index in Peek tagged files.
Use the "MCS index used" extended flag bit to indicate whether the "data
rate or MCS index" field is a data rate or MCS index.

Display the MCS index value if it's present.

(More to come - MCS indices, plus other information, should be used to
calculate the data rate for 11n and beyond.)

Get rid of the hdr_info_t structure while we're at it; just use local
variables for each of the fields.

Change-Id: I546f53a8ebd89078d5f23e1290557b97348aff38
Reviewed-on: https://code.wireshark.org/review/4988
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-30 00:09:25 +00:00
Guy Harris 8165448504 Expand the 802.11 pseudo-header and support new radio metadata.
Add a set of presence bits, so we can indicate which bits of radio
metadata we do and don't have.

Fill in more radio metadata from capture files, and display it.

(More to come.)

Change-Id: Idea2c05442c74af17c14c4d5a8d8025ab27fbd15
Reviewed-on: https://code.wireshark.org/review/4987
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-29 23:04:05 +00:00
Guy Harris 422e1d9fed Add a comment showing mapping to radiotap.
Useful if we try to provide some "standard" 802.11 metadata header that
can support both radiotap and Peek tagged (and perhaps others).

Change-Id: Ibac9829e3411670a439db7cb77e1694a5641b0a5
Reviewed-on: https://code.wireshark.org/review/4970
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-28 07:26:06 +00:00
Guy Harris a2b9b902d9 Some additional information from bug 10637.
That bug includes a capture and a screendump of OmniPeek's dissection of
the packet in that capture; this lets us identify some tags as the
center frequency of the 802.11 channel and a set of extended flags used
for 802.11n and 802.11ac.

Show some flags from bug 9586, under the assumption that certain fields
in the Peek tagged header correspond to certain fields in the remote
Peek protocol.

Change-Id: I0f3c2e6638d6cf5f6ec470d65bd574171a2d958d
Reviewed-on: https://code.wireshark.org/review/4969
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-28 06:50:12 +00:00
Guy Harris 30742dd7c8 Expand comments.
Change-Id: I92348f98cd04ff0e7fc05e472075315ca0fd260e
Reviewed-on: https://code.wireshark.org/review/4931
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-25 23:08:55 +00:00
Guy Harris 6ebb50c67e Get rid of a trailing blank.
Change-Id: I7963f05a78ec764a21d388fcdba618ffbcf935e4
Reviewed-on: https://code.wireshark.org/review/4930
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-25 22:41:19 +00:00
Guy Harris f36bbffc3b Update a comment.
Change-Id: I55002477a416710592a482725af68cdf2511e063
Reviewed-on: https://code.wireshark.org/review/4929
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-25 22:39:58 +00:00
Alexis La Goutte ec5159bf63 PCAPNG (wiretap): Fix Dead Store (Dead assignement/Dead increment) warning found by Clang
Change-Id: I6337fe88bbfd76161abc3b51c70402e7e63a435e
Reviewed-on: https://code.wireshark.org/review/4813
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-10-19 09:26:43 +00:00
Guy Harris 36e4e6fa0a Get rid of unused includes of <ctype.h>.
Change-Id: Iab9eaeb0f5765748b2582177396264e4e69bc6d1
Reviewed-on: https://code.wireshark.org/review/4786
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-17 21:04:59 +00:00
Guy Harris 5bfde7c638 Don't use ctype.h routines.
That avoids locale dependency and handles possibly-signed chars (which
we weren't doing before).

Change-Id: I70f3d993c9a8fbf870901f12b430d733968c3fa8
Reviewed-on: https://code.wireshark.org/review/4781
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-17 20:37:42 +00:00
Guy Harris d347b7284f Don't try to compute time stamps for files from Packet Builder.
I don't trust Packet Builder's ability to convert time stamps between
Capsa format and pcap.

Change-Id: I0ac2e14216e37127d81d5bf1c6d48a2c20841a8e
Reviewed-on: https://code.wireshark.org/review/4721
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 10:01:57 +00:00
Guy Harris c74cefbfc9 Fix a debugging printout.
Change-Id: I06bc40bece3ea98578a252217c9de4748276a440
Reviewed-on: https://code.wireshark.org/review/4720
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 07:01:15 +00:00
Guy Harris 377a4865e3 Get rid of some set-but-no-longer-used variables.
Change-Id: Iaf7267b6ee3d4ab288c8ffa487f5de736bc4aead
Reviewed-on: https://code.wireshark.org/review/4719
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 06:54:23 +00:00
Guy Harris df8389559f Make sure *err and *err_info are set when returning PCAPNG_BLOCK_NOT_SHB.
Clean up a comment and indentation while we're at it.

Change-Id: Ia2b0a3f642849dcd464e04cdca13ff05c2fbe2e6
Reviewed-on: https://code.wireshark.org/review/4717
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 01:17:41 +00:00
Guy Harris 9cfab55200 The record offset block begins with a 1-byte(!) header.
Clean up the code to read the block according to that description.

Change-Id: Icb332e293c4b41d91989aa17a7546f298068e908
Reviewed-on: https://code.wireshark.org/review/4716
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 00:57:26 +00:00
Guy Harris fa8d236166 Get rid of another unused variable.
Change-Id: Id3e9bdd9308342460f84b5d4aeb13e9d6d52616c
Reviewed-on: https://code.wireshark.org/review/4715
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-16 00:20:03 +00:00
Guy Harris 7bca9126ed Don't allocate the interfaces array until we've read the SHB.
Nothing from the SHB gets stored in the interfaces array - it's filled
in from IDBs - so it doesn't need to exist when we read the first SHB,
and thus doesn't need to be freed if the attempt to read the SHB gets an
error or a "this isn't a pcap-ng file" indication.

Update a comment while we're at it.

Change-Id: Ie67edb52dcf13c974607e95e290661bf48be68ae
Reviewed-on: https://code.wireshark.org/review/4711
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-15 23:56:18 +00:00
Guy Harris f518089709 Clean up the read routines.
The block read routines don't need to return a "bytes read" amount any
more.

Have pcapng_read_block() just return an indication:

	PCAPNG_BLOCK_OK - the read succeeded;

	PCAPNG_BLOCK_NOT_SHB - the read failed in a fashion that
	    indicates that we might just not be reading a pcap-ng file;

	PCAPNG_BLOCK_ERROR - the read failed in some other fashion
	    (i.e., we already have concluded that the file is a pcap-ng
	    file, or we got an I/O error).

In the cases where it needs to know whether it's reading the first block
for an open, have it check the shb_read flag, rather than being passed a
separate Boolean argument.

This means that pcapng_read_section_header_block() should return such an
indication as well.

Make the other block-reading routines return a Boolean success/failure
indication.

Change-Id: Id371457018a008ece9058d6042da44d631e51889
Reviewed-on: https://code.wireshark.org/review/4710
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-15 23:46:41 +00:00
Guy Harris 0ac9449442 We can't check the length of an SHB until we determine the byte order.
Don't check a possibly-byte-swapped length against the minimum SHB size;
it'll probably look huge if it's byte-swapped, so the test won't fail
even if it is too small, and a really huge SHB's length could look too
small if it's byte-swapped.

Do the check *after* we've read the fixed-length portion of the block;
yes, that means we've read past the purported size of the block at that
point, but if that read succeeds, that doesn't matter, and if that read
fails, it just means we'll report "file cut short" rather than "bad SHB
length", *both* of which are problems with the file.

Change-Id: Ie3b5700662f2a6da40d373a84f00a8fc2cf0ce1b
Reviewed-on: https://code.wireshark.org/review/4692
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 23:53:48 +00:00
Guy Harris 44204614e8 Don't assume pcap_read_block() returns the number of bytes read.
Recent changes must have made it not do so in some cases, and
our current version of file_tell(), unlike ftell() around which the
older file_tell() was a wrapper, is known to be cheap (ftell() would
make a system call to get the position).  Just use file_tell() before
each read.

(Further cleanup is called for.)

Bug: 10568
Change-Id: Ib92057b2b87ec6eb16fd612bc91baeb668d1e1c7
Reviewed-on: https://code.wireshark.org/review/4691
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 23:39:55 +00:00
Guy Harris 4a6e31309c Don't log warnings if no block-type handlers are registered.
Check whether the block-type hash table exists before trynig to look
up anything in it.

Change-Id: I0aeb7f6454903bfcbdd0716909a0b72851d87233
Reviewed-on: https://code.wireshark.org/review/4689
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 20:42:04 +00:00
Guy Harris 74a8ad74c5 Get rid of no-longer-used #define.
Change-Id: Ibaebda819094f09610dc9cf8a303440b93bf2da0
Reviewed-on: https://code.wireshark.org/review/4686
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 19:32:17 +00:00
Guy Harris a18c9c5cf0 Don't supply time stamps for Capsa packets for now.
The time stamps aren't known to be right, so don't provide them - that
way, instead of users reading Capsa files and getting the wrong idea
about the time stamps, they'll get no time stamps and have to ask for
our help, at which point we can ask them for *their* help in seeing what
Capsa thinks the time stamps are.  (The joys of reverse-engineering.)

Change-Id: I77e12c09f2bc74b50a1b2b226fa6da3e8c0fedf9
Reviewed-on: https://code.wireshark.org/review/4685
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 19:30:32 +00:00
Guy Harris 0cbaae4530 Fix return values.
Change-Id: I3f11d48f74d71367cc76c76dfc88763894f23f2c
Reviewed-on: https://code.wireshark.org/review/4679
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 08:48:47 +00:00
Guy Harris e70db8e7eb And another warning.
(So why can't GCC or Clang be taught to warn about *all* implicit
shortenings, as MSVC does, not just 64-bit-to-32-bit shortenings?)

Change-Id: I88c0b0aa2f1b306f58952589ff8bcae17bc29768
Reviewed-on: https://code.wireshark.org/review/4676
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 07:12:12 +00:00
Guy Harris abd657fd62 Squelch another warning.
(Yes, we should, on platforms with a 32-bit time_t, check to make sure
the time stamp fits and do something if it doesn't.  Or we should make
the seconds part of an nstime_t be 64-bit and handle overly-large values
when converting them to year/month/day/hour/minute/second.)

Change-Id: If219534985dce29d00754ff151f6c4b5893080d8
Reviewed-on: https://code.wireshark.org/review/4675
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 07:10:21 +00:00
Guy Harris 7d28a56076 Squelch a compiler warning.
Change-Id: I5b383c967c465882819ac449fbd54915bc692687
Reviewed-on: https://code.wireshark.org/review/4674
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 07:07:42 +00:00
Guy Harris a5d35a25a1 Clean up comment.
Change-Id: I9a620da95c1dd9b173cebe28f790eeb50e3f9a8f
Reviewed-on: https://code.wireshark.org/review/4673
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 06:55:50 +00:00
Guy Harris 4495753b69 Get rid of out-of-date comment.
Change-Id: I68e85e2e29e1154170ccc50488ec943958978150
Reviewed-on: https://code.wireshark.org/review/4672
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 06:47:49 +00:00
Guy Harris fa6e907711 Initial version of support for Colasoft Capsa files.
The time stamp origin is not correct.  Capsa's absolute time stamp for
the sample captures from their Web site would be helpful.

Change-Id: I365daf7b42240e33f54df76939254f41ed57a9b2
Reviewed-on: https://code.wireshark.org/review/4671
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-14 06:45:35 +00:00
Guy Harris b3490c20ce Use the wtap_read_bytes{_or_eof}() routines.
Change-Id: I4f707bc714b2643d0f6c568f3367e712ee635d8e
Reviewed-on: https://code.wireshark.org/review/4612
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-11 23:07:41 +00:00
Guy Harris 8eefa4d9f9 Use the count-of-records fields to figure out how many records to read.
Fetch the count of records from one of the locations where it appears to
be, and, currently, require that it be equal to the count at the other
location where it appears to be; if they ever differ, we'll need the
file in order to reverse-engineer some more.

Fix the way we *write* .rf5 files - it turns out that we were

	1) not writing the full file size;

	2) not writing the packet count in the right location.

Detect files written by the old code, and get the packet count from the
right location for those files.

Change-Id: I7ce83afbc9dbbd300c81c96ef8f7785a0aeefa7a
Reviewed-on: https://code.wireshark.org/review/4608
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-11 20:11:58 +00:00
Guy Harris ffa377b22f Use names more like the other names in open_info.
For open_info, use names based on the names in other lists.

Also, in comments, indicate what the three count 'em three tables are
used for, and clean up the type/subtype table.

Change-Id: I7a763119e790d5970f87dff05284f465eebfb7e7
Reviewed-on: https://code.wireshark.org/review/4599
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 20:20:29 +00:00
Guy Harris 685d3034d5 Version 3 has only absolute timestamps; don't set nsg_creltime.
Version 3's time stamps are all absolute, so we can directly use the
value in the file; we don't need to keep track of the time in the
private data structure, and some compilers issue warnings due to setting
it and then not using the value to which we set it.

Change some names and indentation to match other file versions while
we're at it.

Change-Id: I97698d933b87a8ad58d9e88ceedd75004797df69
Reviewed-on: https://code.wireshark.org/review/4596
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 18:41:00 +00:00
Guy Harris 7e49f06190 wtap_file_read_till_separator() can return values other than 1 on success.
It returns the length of the string it read, so only treat 0 and -1 as
errors.  (0 either means "EOF" or "string is zero length", but this is
only in the code that reads numbers, and a number needs at least 1
digit, so both EOF and "zero-length string" mean "this isn't a valid
Peek tagged file".)

Change-Id: Ib83eb2f1e53d912a2138be01480e2b464cf936db
Reviewed-on: https://code.wireshark.org/review/4591
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 10:22:29 +00:00
Gerald Combs 3a4cab751e CMake: Bundle our libraries.
Change-Id: I5df4d794602f7e53c2f4f496597f8eaf7c7b6eaa
Reviewed-on: https://code.wireshark.org/review/4588
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-10 01:45:55 +00:00
Guy Harris 45f2afc696 Oops, missed one.
Change-Id: I0847846d50d6979f0f50a00438a834c7c7c2acc0
Reviewed-on: https://code.wireshark.org/review/4586
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 01:30:40 +00:00
Guy Harris 4f4e01b36b Don't treat int return values as valid wtap_open_return_val values.
They happen to be, at least now, but that's not valid in C++, and it's
probably unwise in any case.

Change-Id: Ifd49920cfaa376e5e7788329ee83db3956a7cdff
Reviewed-on: https://code.wireshark.org/review/4585
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 01:14:37 +00:00
Guy Harris 9754192f9b Cast size_t to to gulong as the length argument to g_snprintf().
Sadly, the GTK+ folks decided not to use size_t for the size argument,
so it doesn't do the right thing on LLP64 platforms such as Windows.

Change-Id: I2aa9096215c488b48f1cf68d2a285a48abb6f07f
Reviewed-on: https://code.wireshark.org/review/4584
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 01:09:29 +00:00
Guy Harris 5947291294 Fix declared types of open routines.
Change-Id: Ifa38dfec31ec5b03f00d6e077902184a9ae2ee0e
Reviewed-on: https://code.wireshark.org/review/4583
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-10 01:04:43 +00:00
Guy Harris 45e462985d Use an enum for the open-routine return value, as per Evan Huus's suggestion.
Clean up some things we ran across while making those changes.

Change-Id: Ic0d8943d36e6e120d7af0a6148fad98015d1e83e
Reviewed-on: https://code.wireshark.org/review/4581
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-09 23:45:30 +00:00
Guy Harris e7e2f9c639 Make the OPEN_INFO_ values members of an enum.
Change-Id: I93dbd14f81492764bf5854ee40eebcd1e04f3e01
Reviewed-on: https://code.wireshark.org/review/4570
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-09 00:27:32 +00:00
Guy Harris d1ec1e85f8 Use WTAP_ERR_DECOMPRESS for decompression errors.
Distringuish "the compression data has a problem" from "the capture file
(not compressed, or after decompression) data has a problem", with
WTAP_ERR_DECOMPRESS used for the former (whether it's the gzipping
decoded by our gunzip code or the Sniffer compression) and
WTAP_ERR_BAD_FILE used for the latter.

Change-Id: I8e6bff7edb480deba00c52a9e5afff607492e085
Reviewed-on: https://code.wireshark.org/review/4568
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-08 22:49:08 +00:00
Guy Harris dbf8024eeb No need to set *err_info if there's no error.
Change-Id: I98ae9ec50e079d48b6247bb208528b7c5ad16027
Reviewed-on: https://code.wireshark.org/review/4564
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-08 21:05:05 +00:00
Guy Harris 21e844bd82 Use WTAP_ERR_BAD_FILE for malformed compressed data in DOS Sniffer files.
Get rid of WTAP_ERR_UNC_TRUNCATED and WTAP_ERR_UNC_BAD_OFFSET, and lump
them under WTAP_ERR_BAD_FILE, with an error string; they're just another
form of "this file isn't a valid file of the type in question".

Change-Id: I0e9ac7c2ee66c8d789234a301c1dc2173aef1312
Reviewed-on: https://code.wireshark.org/review/4562
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-08 20:50:42 +00:00
Gerald Combs c303a2ebf5 Make sure we don't dereference a null pointer.
Change-Id: I033c60cdc5b78f4db31903277c659661e0dc5123
Reviewed-on: https://code.wireshark.org/review/4561
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-10-08 20:46:20 +00:00
Guy Harris 70ba2f88d1 Set err_info to null for errors that don't have an informaton string.
Change-Id: Ibbcf3496ebfb20c53b953db84b2ddb69083dcb86
Reviewed-on: https://code.wireshark.org/review/4556
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-08 18:44:30 +00:00
Guy Harris d3e3cb2223 Provide an error message for WTAP_ERR_CANT_WRITE.
Change-Id: Iffc762ba60ac523148310ea2a432d4953bc64a94
Reviewed-on: https://code.wireshark.org/review/4541
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 23:23:28 +00:00
Guy Harris a566f617d8 No need for WTAP_ERR_CANT_READ.
Unlike the standard I/O routines, the code we introduced that supports
fast random seeking on gzipped files will always supply some specific
error code for read errors, so we don't need WTAP_ERR_CANT_READ.

Add WTAP_ERR_CANT_WRITE for writing, as we're still using the standard
I/O routines for that.  Set errno to WTAP_ERR_CANT_WRITE before calling
fwrite() in wtap_dump_file_write(), so that it's used if fwrite() fails
without setting errno.

Change-Id: I6bf066a6838284a532737aa65fd0c9bb3639ad63
Reviewed-on: https://code.wireshark.org/review/4540
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 23:19:56 +00:00
Guy Harris 5e0e4fa9e4 Replace another file_read() call with wtap_read_bytes().
Change-Id: I7b5e82c3a2fc4b4c16bf466508546558c584c150
Reviewed-on: https://code.wireshark.org/review/4539
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 22:48:57 +00:00
Guy Harris d6f217f62d Close some memory leaks for bad K12 RF5 files.
Change-Id: Ic4272a5637463fdb4d23f80d81341a0e6ea33de3
Reviewed-on: https://code.wireshark.org/review/4538
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 22:07:50 +00:00
Guy Harris 71550ba98a Make the code a bit more like the pre-new-APIs code.
Change-Id: I40282d8825936d24480c9b77e2e7d9374b1de6b5
Reviewed-on: https://code.wireshark.org/review/4534
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 19:50:08 +00:00
Guy Harris 4611b8d485 Make the code a bit more like the pre-API change code.
Change-Id: I9a8bd2c7ce97993c1b72caf63254d024950f8b94
Reviewed-on: https://code.wireshark.org/review/4520
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 08:05:52 +00:00
Guy Harris 05d34b3ca1 Clean up white space.
Change-Id: I73f2406483c13c7917faed46db6fc1f5e2bc8fcd
Reviewed-on: https://code.wireshark.org/review/4517
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 07:40:27 +00:00
Guy Harris 3f101f2b3f Fix a comment, clean up some whitespace.
Change-Id: I5d3d518eee2d61dd896b44c2a61d66057f3c2f7f
Reviewed-on: https://code.wireshark.org/review/4516
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 07:35:43 +00:00
Guy Harris ffd48cefa6 Whitespace cleanups.
Change-Id: I92f983b2e04defab30eb31c14c484b9f0f582413
Reviewed-on: https://code.wireshark.org/review/4513
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 05:01:39 +00:00
Guy Harris 670ebda4a6 Add some higher-level file-read APIs and use them.
Add wtap_read_bytes(), which takes a FILE_T, a pointer, a byte count, an
error number pointer, and an error string pointer as arguments, and that
treats a short read of any sort, including a read that returns 0 bytes,
as a WTAP_ERR_SHORT_READ error, and that returns the error number and
string through its last two arguments.

Add wtap_read_bytes_or_eof(), which is similar, but that treats a read
that returns 0 bytes as an EOF, supplying an error number of 0 as an EOF
indication.

Use those in file readers; that simplifies the code and makes it less
likely that somebody will fail to supply the error number and error
string on a file read error.

Change-Id: Ia5dba2a6f81151e87b614461349d611cffc16210
Reviewed-on: https://code.wireshark.org/review/4512
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-07 01:01:59 +00:00
Guy Harris 560e06d0de Read the record length in common code.
Instead of reading the 16-byte blob and record length at the same time,
just read the 16-byte blob, and then fall through to the record-length
reading code.

Change-Id: Ib2819a2d654e2670233821882bac79d7cd656b12
Reviewed-on: https://code.wireshark.org/review/4480
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-05 18:47:18 +00:00
Guy Harris e731bc7707 Fix a comment.
Change-Id: I875888753859488ed810cedb5656bd870bee7122
Reviewed-on: https://code.wireshark.org/review/4471
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-05 05:43:05 +00:00
Guy Harris e7dcf1b12d Improve comments, and add some #defines, to make it clearer what the code does.
Change-Id: I2cd8973bdce171053664cf4ed06a37bdd9b30353
Reviewed-on: https://code.wireshark.org/review/4470
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-05 05:31:53 +00:00
Guy Harris a7d6321d2d Use some macros to clean up the Snifer decompression code.
For code that's used in more than one place, use macros.  This combines
a bunch of checks into the output macros.

Change-Id: Ic32dce75e1c531fd28bfed180856e230277bfe58
Reviewed-on: https://code.wireshark.org/review/4451
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-04 02:59:48 +00:00
Guy Harris 54b733ce9a Make the time stamp resolution per-packet.
Pcap-ng files don't have a per-file time stamp resolution, they have a
per-interface time stamp resolution.  Add new time stamp resolution
types of "unknown" and "per-packet", add the time stamp resolution to
struct wtap_pkthdr, have the libwiretap core initialize it to the
per-file time stamp resolution, and have pcap-ng do the same thing with
the resolution that it does with the packet encapsulation.

Get rid of the TS_PREC_AUTO_XXX values; just have TS_PREC_AUTO, which
means "use the packet's resolution to determine how many significant
digits to display".  Rename all the WTAP_FILE_TSPREC_XXX values to
WTAP_TSPREC_XXX, as they're also used for per-packet values.

Change-Id: If9fd8f799b19836a5104aaa0870a951498886c69
Reviewed-on: https://code.wireshark.org/review/4349
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-28 18:38:18 +00:00
Pascal Quantin a3c4133847 tshark: fix -H option
The dump of the address info list must be differed to the end of the processing so as to know which host name was actually used in the capture

Bug: 10507
Change-Id: I44dbfae918d4ae92f9740c309804c7ff21bb4e1b
Reviewed-on: https://code.wireshark.org/review/4327
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: Michael Mann <mmann78@netscape.net>
2014-09-27 12:13:06 +00:00
Guy Harris 7477a46f92 Get rid of some unused members of wtapng_simple_packet_t.
Change-Id: I790d99cefdd58f01ec4a792d66144634862e7427
Reviewed-on: https://code.wireshark.org/review/4331
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-27 06:41:03 +00:00
Michal Labedzki 1275d05913 Reduce compilator warnings
warning: cast from 'const guint8 *' (aka 'const unsigned char *') to
	'const guint16 *' (aka 'const unsigned short *') increases required
	alignment from 1 to 2 [-Wcast-align]
warning: cast from 'const guint8 *' (aka 'const unsigned char *') to
	'const struct logger_entry *' increases required alignment
	from 1 to 4 [-Wcast-align]

Change-Id: I1ef8bfedb31c3f633166405689d8d788d45365db
Reviewed-on: https://code.wireshark.org/review/4236
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-09-26 09:10:38 +00:00
Guy Harris a87ea36b12 Fix a record size check.
It was being checked against the wrong value, so some invalid records
passed the check.

Also, change one comparison (rec_size is in the range [0, 65535], even
though it's in an int, so we can safely cast it to guint) and fix the
metadata length value when reading Ethernet packets.

Bug: 10495
Change-Id: I2ce5c93fe50d836ec0accfcdef31654ba6b5b7c7
Reviewed-on: https://code.wireshark.org/review/4278
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-25 07:49:54 +00:00
Guy Harris 38ae61f159 radcom_read_rec() should always read from the file specified by the fh argument.
It's called both from the read and seek-read routines, so it shouldn't
always read from the sequential handle.

Change-Id: I8cb33b9f5b7219f335b0aeeef29c479916276f89
Reviewed-on: https://code.wireshark.org/review/4276
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-25 03:33:24 +00:00
Evan Huus 42018cf08a pcapng: respect the fact that wblock->data is a union
Make sure to zero the *entire* thing, and only access it as a given type when
that's the type indicated by the (non-union) type field.

Bug: 10498
Change-Id: I3e94a9c5d399d3ee4aedcd49f1aa2d7678ecf7ce
Reviewed-on: https://code.wireshark.org/review/4273
Petri-Dish: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-09-25 01:25:58 +00:00
Guy Harris 5f096acb45 Fix presumed cut-and-pasteo.
On errors *other* than a short read, we were driving on and processing
the non-data that we didn't read.

Change-Id: I6289ddf31ff7896918a030af9d1261bdc194e7d3
Reviewed-on: https://code.wireshark.org/review/4270
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-24 00:11:01 +00:00
Evan Huus ad6a66388d pcapng: ensure the values we now free are initialized
Should fix the remaining test suite failures.

Change-Id: I50a6cb1bf57bd6a973d4777349708b75aeb41620
Reviewed-on: https://code.wireshark.org/review/4264
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-09-23 04:27:59 +00:00
Guy Harris be3246060e Make peekclassic_read_packet_v56() more like the _v7 version.
We can't use wtap_file_read_expected_bytes() in the _v7 version, as that
version returns an int, not a Boolean; just expand
wtap_file_read_expected_bytes() in the _v56 version, to make it look
similar to the _v7 version.

Change-Id: Id907bac265c123ad5821591c1cf081b5747724d8
Reviewed-on: https://code.wireshark.org/review/4262
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-23 02:10:35 +00:00
Guy Harris e543818734 Remove misuse of wtap_file_read_expected_bytes().
wtap_file_read_expected_bytes() is a macro that can return a Boolean
FALSE; it should not be used in routines that don't return a Boolean.

In addition, both EOF *and* a short read, in that routine, should be
treated as a "not an IPFIX file" indication.

While we're at it, a seek failure should be treated as an error.

Change-Id: I97815bc9e78169ded567b60835cc7bcf6a0e6f0c
Reviewed-on: https://code.wireshark.org/review/4261
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-23 01:14:30 +00:00
Guy Harris 6ebffcc5fa Make sure the option string pointers are set before freeing them.
Change-Id: If86327a02e4fac7d3ed2d02b2a0c95906209dea0
Reviewed-on: https://code.wireshark.org/review/4260
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-23 01:00:32 +00:00
Evan Huus 1db95f7e4d pcapng: don't leak block option strings
I *think* I got all the cases; I got most of them, at any rate, and enough to
shut up valgrind in all the test cases I ran.

Change-Id: I393bac0756f577b65e400b792f6719fa6ec4056a
Reviewed-on: https://code.wireshark.org/review/4244
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-09-22 20:41:28 +00:00
Guy Harris ec5915a6d7 Make style more consistent.
Change-Id: I4ba40504d8cc308f7c13b465fcfaa9ff5eeebcf2
Reviewed-on: https://code.wireshark.org/review/4252
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-22 18:54:08 +00:00
Guy Harris 72805be9ed Consistently use tab indentation.
(If somebody wants to convert the entire file to 4-space indentation, go
ahead.)

Change-Id: I1e3829289ac67db79eea2eb16e6a4ba40c449a8d
Reviewed-on: https://code.wireshark.org/review/4250
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-22 18:50:32 +00:00
Michal Labedzki 56a09d24dc Try to fix some buildbot warnings
Most interesting are:
 warning: cannot optimize loop, the loop counter may overflow [-Wunsafe-loop-optimizations]
 warning: ISO C forbids zero-size array [-Wpedantic]
 warning: ISO C90 doesn't support unnamed structs/unions [-Wpedantic]
 warning: cast discards '__attribute__((const))' qualifier from pointer target type [-Wcast-qual
 warning: initializer element is not computable at load time [enabled by default]

Change-Id: I5573c6bdca856a304877d9bef643f8c0fa93cdaf
Reviewed-on: https://code.wireshark.org/review/3174
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-09-22 10:52:03 +00:00
Guy Harris c1d6a4123a Clean up reading code.
The only place where a short read should be treated as an EOF is if the
read of the block header reads 0 bytes.  All other short reads,
including reads of the block header returning at least 1 byte but not
enough for a complete block header, and any reads of the stuff
*following* the block header even if they return 0 bytes, should be
treated as "short read" errors.

If the option length is bigger than the option buffer size, treat that
as a bad file (I'm not sure that can happen, so maybe it should be
treated as an internal error instead).

Use file_skip() rather than file_seek() when skipping forward N bytes.
If it fails, treat that as an error under all circumstances.

When reading the first section header block in the open routine, have
pcap_read_block() return -2 if it doesn't look like an SHB (too short,
wrong block type, bad block length, unknown byte-order magic number), as
that means the file isn't a pcap-ng file and the open should return 0.

Return -1, not 0, for all errors in various block-reading routines.

file_seek() returning 0 is *not* an error.  file_seek() returning -1 (or
any other negative number *is* an error; its return value is signed, so
don't assign it to an unsigned variable.

This might fix the test errors for the Lua file format handler tests.

Change-Id: Ifa7d9834c38bf238461c9cc9625a2aa761cb6ff2
Reviewed-on: https://code.wireshark.org/review/4238
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-22 10:48:55 +00:00
Jeff Morriss e483772d3f Fix up formatting (bring function names over to column 0).
Change-Id: I054f3ec13fd5907c8f1e0546292777a5596fc029
Reviewed-on: https://code.wireshark.org/review/4232
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-09-22 01:37:14 +00:00
Guy Harris 10b33c06de Remove file_error() calls after pcap_read_block() calls.
pcap_read_block() takes err and err_info arguments, and sets them on
error; no need to call file_error() if pcap_read_block() fails.

Change-Id: I33b96d31395bf7d66abdecbebd5cf775e8662004
Reviewed-on: https://code.wireshark.org/review/4209
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-20 18:54:17 +00:00
Guy Harris 32c38a4ecc Add file_error() calls after file_read().
If file_read() doesn't return the exact number of bytes you asked for,
and you really need all those bytes to be there, you have to call
file_error() to find out what the problem is.

Change-Id: I4cc87bc1b6cc5a49bbcbf93b56106f57af290d20
Reviewed-on: https://code.wireshark.org/review/4205
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-20 18:31:28 +00:00
Guy Harris 3c5541906b Set err_info if the attempts to read record headers fail.
If it fails due to, for example, the file being gzipped and having a bad
gzip CRC, the error returned is WTAP_ERR_DECOMPRESS and, for that error,
err_info is expected to be set to a string giving details of the
problem, so we need to pass back to our caller the string in question.

Bug: 10484
Change-Id: I3aa2a92d04fcc08946ff073a40efa708079bbb3e
Reviewed-on: https://code.wireshark.org/review/4201
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-20 17:46:02 +00:00
Guy Harris 6f16f26d64 The Shomiti document is available on the Wayback Machine.
I don't know why it was unavailable at some point, but it appears to be
available again.  Update the comment to reflect that.

Change-Id: I7dc1fcb554e73d3b0fc2bd2fbdf6235e791a4253
Reviewed-on: https://code.wireshark.org/review/4200
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-20 09:17:36 +00:00
Michal Labedzki 4fd89b0ba1 Logcat: Fix crashes when try to use logcat_text open routine on binary file
Change-Id: Ied0778af9d5ff0e49c6efd4ea9411ae1a72cb8e5
Reviewed-on: https://code.wireshark.org/review/4190
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-09-20 08:33:12 +00:00
Michal Labedzki 39864c12fd Logcat: Add more save formats over exported pdu
Add all logcat format like brief, threadtime, long, etc. when try to save
logcat logs where there is EXPORTED_PDU layer.

Change-Id: I338f0bbd46dd8db984efc1c03980c7e9c7401a44
Reviewed-on: https://code.wireshark.org/review/4164
Reviewed-by: Michal Orynicz <michal.orynicz@tieto.com>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-09-18 13:10:14 +00:00
Bill Meier a379ac74d2 Fix spelling: cant-->can't, wont-->won't, etc
Change-Id: Ia6c3e7a25615bf8e052c3bacf096d76df775c9c2
Reviewed-on: https://code.wireshark.org/review/4126
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-09-16 15:31:58 +00:00
Guy Harris 47c592938b Add some additional checks in SnifferDecompress().
Check the input pointer in the while clause of the loop, so that we
handle an empty input buffer.

When reading a bit mask, check before fetching the bit mask that we have
two bytes of bit mask and the byte after it.

Before putting an uncompressed input byte into the output, make sure we
wouldn't run past the end of the output buffer.

Before copying an earlier string from the output buffer, make sure it
doesn't run past the end of the data we've decompressed so far.

Bug: 10461
Change-Id: I8bb8d0d291368ae8bf0ac26970ff54d3262a7e6e
Reviewed-on: https://code.wireshark.org/review/4083
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-11 20:30:20 +00:00
Bill Meier cc286bad25 Various minor changes:
- Create/use some extended value_strings
- Remove unneeded #includes;
- Do whitespace changes;
- Add editor modelines.

Change-Id: I2e1ea37dddfd5e8656c90c0d45a6596c4912bb2c
Reviewed-on: https://code.wireshark.org/review/4065
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-09-10 16:17:29 +00:00
Bill Meier 93cc6f004f Fix some spelling & grammar.
Change-Id: Iedeaa411caa0823922dd79c27897a2349d4e6907
Reviewed-on: https://code.wireshark.org/review/4054
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-09-09 19:43:27 +00:00
Guy Harris afb939b5f4 Make the count of bytes read from the file 64 bits.
We probably won't get files that big, but let's at least be prepared;
that squelches some compiler warnings.

Change-Id: Ia43ff78af7df63c7204c41d8331fea946de63116
Reviewed-on: https://code.wireshark.org/review/4015
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-06 18:52:47 +00:00
Guy Harris a52939cef2 Fix trailing blank.
Change-Id: Ide4afb2fb78c80800f04a40031fa1f35804f6464
Reviewed-on: https://code.wireshark.org/review/3809
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-24 08:12:53 +00:00
Guy Harris bb0c17546f Strengthen the heuristics for pcap subtypes.
When trying to guess what type of capture a file is, look for as many
bogosities (caplen > len, microseconds >= 10^6/nanoseconds >= 10^9,
too-high caplen, too-high original len, caplen > snapshort length), to
increase the chances of guessing correctly.

(Every time somebody uses 0xa1b2c3d4 as the magic number for a capture
file that isn't standard pcap format, God kills a kitten.  Please, think
of the kittens.)

Change-Id: I3f397d598ed61dc82e2832be30452ebe8ace98e8
Reviewed-on: https://code.wireshark.org/review/3808
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-24 08:07:53 +00:00
Guy Harris b8293f95ad If we don't find a NetScaler signature, don't report an error.
It's *NOT* an error; it's just a file that isn't a NetScaler file.
Otherwise, we report errors on files that should just be passed on to
other open routines.

Also, NetScaler files are *NOT* text files, and we should *NOT* use
".txt" as the suffix.

Change-Id: If001abbbbc3de3ea27439a44a47ce1d6071d38ae
Reviewed-on: https://code.wireshark.org/review/3678
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-18 00:32:59 +00:00
Guy Harris 6a8267270f Return 0, not -1, for "this isn't my type of file".
-1 means "I got an error reading this file, so there's no point in
trying any more open routines".  It doesn't mean "I couldn't find any
matching pattern in the text"; that's 0, for "this isn't my type of
file, but keep trying".

Change-Id: I9d2e8b8fe6720052cacf70f0bacdcbc1175202cc
Reviewed-on: https://code.wireshark.org/review/3674
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-17 23:03:20 +00:00
Michał Orynicz 735263e58e Logcat text: small fixes
* fix exporting "beginning of" frame logs into info field
  * add missing "Failure" level to regexp in wiretap part
  * remove usage of GDateTime from wiretap part

Change-Id: Ibdea730623241cccbbc1694a34daa308e48c0a89
Reviewed-on: https://code.wireshark.org/review/3493
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-08-08 08:12:10 +00:00
AndersBroman febbe1286d Add casts to make logcat-text build on Win64
Change-Id: I38d65a06b925653e22a59a4a4cd0a53a87072b49
Reviewed-on: https://code.wireshark.org/review/3456
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-06 08:49:56 +00:00
Michał Orynicz 1a02ca0150 Add support for android logcat text files
Wireshark already supports reading and writing logcat
logs saved in binary files. Binary format, although
better, is used less often than saving those logs to
text files.

This patch extends wireshark's support for android logcat
logs to reading and writing logcat logs in text files.

Features:
* support for tag, brief, process, thread, time, threadtime
  and long formats
* saving in original format
* it's generally awesome

Change-Id: I013d6ac2da876d9a2b39b740219eb398d03830f6
Reviewed-on: https://code.wireshark.org/review/1802
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-08-06 06:46:50 +00:00
Bill Meier f3dd7fe1eb Fix whitespace/indentation to match editor modelines.
Change-Id: I3445ae22f10584582d465bf632942e016f5f70ca
Reviewed-on: https://code.wireshark.org/review/3452
Reviewed-by: Bill Meier <wmeier@newsguy.com>
2014-08-05 20:42:21 +00:00
Evan Huus d34d09ebe4 Initialize a variable to squelch a false-positive warning on the mac buildbot
Change-Id: I43f5ea7a73941b518c714216df0d7e25ad260012
Reviewed-on: https://code.wireshark.org/review/3384
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-08-03 17:26:05 +00:00
Guy Harris 0734ac385f Rename buffer_ routines to ws_buffer_ to avoid name collisions.
In particular, epan/wslua/lrexlib.c has its own buffer_ routines,
causing some linker warnings on some platforms, as reported in bug
10332.

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

Change-Id: I1d42c7d1778c7e4c019deb2608d476c52001ce28
Reviewed-on: https://code.wireshark.org/review/3351
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-08-02 11:01:29 +00:00
Peter Wu 0492921adc Replace lseek/fstat by ws_lseek64/ws_fstat64
lseek returns an off_t type which is system-dependent. Use ws_lseek64 in
favor of lseek as that supports 64-bit quanities.

Use ws_fstat64 instead of stat to support 64-bit file sizes on Windows.
For the majority of the changes, this makes no difference as they do not
apply to Windows ("ifndef _WIN32"; availability of st_blksize).

There are no other users of "struct stat" besides the portability code
in wsutil. Forbid the use of fstat and lseek in checkAPIs.

Change-Id: I17b930ab9543f21a9d3100f3795d250c9b9ae459
Reviewed-on: https://code.wireshark.org/review/3198
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-25 21:26:01 +00:00
Evan Huus ae64e09511 Add cast to satisfy win7 buildbot
I really don't understand why MSVC would make the result of this computation an
int64 then complain about down-casting to an int16 when *all* of the
participating variables are int16 or smaller...

Change-Id: I2d9c27ac22b51b10e4872a6640881c8d0ec566e7
Reviewed-on: https://code.wireshark.org/review/3180
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-23 17:44:24 +00:00
Michal Labedzki ccbf373e49 Logcat: Add support for conversion from Exported PDU
Exported PDU may contains (Binary) Logcat, so it is possible to
"export" logcat binary from it.

Change-Id: Ic6607126e739ea3972b46c2bf19f064597d4e970
Reviewed-on: https://code.wireshark.org/review/3001
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-07-23 10:31:49 +00:00
Роман Донченко 696cb6c17b Use forward slashes in paths to runlex.sh
This gets rid of "MS-DOS style path detected" warnings from Cygwin.

Change-Id: Id10429669704aa371dbf56a9398947c8002260ad
Reviewed-on: https://code.wireshark.org/review/3024
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Graham Bloice <graham.bloice@trihedral.com>
Tested-by: Wireshark Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-07-20 13:15:59 +00:00
Guy Harris d4dab16a3f Only one buffer.c, please.
Otherwise, if you link with both libwiretap and libfiletap, it's
anybody's guess which one you get.  That means you're wasting memory
with two copies of its routines if they're identical, and means
surprising behavior if they're not (which showed up when I was debugging
a double-free crash - fixing libwiretap's buffer_free() didn't fix the
problem, because Wireshark happened to be calling libfiletap' unfixed
buffer_free()).

There's nothing *tap-specific about Buffers, anyway, so it really
belongs in wsutil.

Change-Id: I91537e46917e91277981f8f3365a2c0873152870
Reviewed-on: https://code.wireshark.org/review/3066
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-15 23:43:32 +00:00
Guy Harris 7344cfc78f Have buffer_free() null out the buffer data pointer.
That prevents some double-free issues (I got one when doing non-"Update
list of packets in real time" captures, if I do one such capture and
then another one).

Change-Id: Ia08034d9d1640bad21b74960efade8926dbfc5de
Reviewed-on: https://code.wireshark.org/review/3063
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-15 23:23:05 +00:00
Alexis La Goutte ef1b11f622 Fix Dead Store (Dead assignement/Dead increment) warning found by Clang
Change-Id: I17dc2259e039586b9a06944bd1c2b552dd23855d
Reviewed-on: https://code.wireshark.org/review/3052
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-07-15 22:52:31 +00:00
Graham Bloice 9ba0a18d12 Fix up library names when using CMake on Windows
Change-Id: I3573e69eb54044bb915161756dbb8f18cc769061
Reviewed-on: https://code.wireshark.org/review/2957
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-07-15 20:37:44 +00:00
Graham Bloice 8044097473 Fix the x64 builds after the commit:b3b1f7c3aa2233a147294bad833b748d38fba84d
From Change: 2803

Change-Id: Ic57fb0e3c1e0450561aebe48a873a3fdb2e8e105
Reviewed-on: https://code.wireshark.org/review/3014
Reviewed-by: Graham Bloice <graham.bloice@trihedral.com>
2014-07-11 21:37:51 +00:00
Gerald Combs e2038e0300 Add strlen casts.
Change-Id: Icaf80f060c476dd7259c04c4cce4123025ef1dab
Reviewed-on: https://code.wireshark.org/review/3012
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-07-11 21:11:17 +00:00
Peter Wu b3b1f7c3aa logcat: improve (crash) robustness, improve names
The logcat version detector would crash with ASAN enabled because it did
not validate the payload length and hence a payload length of 0 would
trigger out-of-bounds access. (This happened on non-logcat data.)

This patch tries to get rid of all magic numbers by using a structure,
improves the version detector to validate the payload length and
prevents crashes due to missing nul-terminators in the input. Older
Android kernels would create entries with __pad with random contents, so
that cannot be used to determine version for v1. Instead, use heuristics
on the priority, tag and maybe the msg field.

Furthermore, Android is mostly (if not, always?) Little-Endian, so add
conversions where necessary (just in case WS supports BE arches).

"microseconds" has been renamed to "milliseconds" because that is what
they are, actually. A duplicate logcat_log loop has been refactored
such that one loop is sufficient, instead of separate buffers for each
log part, a single one is now used. get_priority does not really need
a pointer, just make it accept a character.

The output has been validated against v1 and v2 logcat binary formats
with __pad (hdr_size) equal to 0, and on attachment 9906.

Change-Id: I46c8813e76fe705b293ffdee85b4c1bfff7d8362
Reviewed-on: https://code.wireshark.org/review/2803
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
Tested-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-07-11 13:29:25 +00:00
Guy Harris b5d4128bee Avoid sign-extending bytes before handing them to <ctype.h> macros.
Pointed out by the Visual Studio code analyzer.

Change-Id: Idd429b4d0fb3db11ce171c3a5b38bdc55cc53c15
Reviewed-on: https://code.wireshark.org/review/2988
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-11 00:28:36 +00:00
Guy Harris ea721b8938 Revert "More needed to get rid of "lib" in "libwsutil" on Windows."
This reverts commit 28719a4e4e.

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: I32e400593e8a39f582cc702df34eea7f6e9e722a
Reviewed-on: https://code.wireshark.org/review/2972
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-10 00:59:07 +00:00
Guy Harris 28719a4e4e More needed to get rid of "lib" in "libwsutil" on Windows.
Change-Id: Iffc12ce67a8245e96eac3cf253641a15385001a9
Reviewed-on: https://code.wireshark.org/review/2969
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-09 23:29:43 +00:00
Guy Harris 8481c43861 Fix more errors revealed by enum-to-integer conversion warnings.
Change-Id: Ib28af874cbac0623ed94e7558f3711e9a1b03a2d
Reviewed-on: https://code.wireshark.org/review/2874
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-06 02:26:11 +00:00
Guy Harris ab5d1cfa20 Squelch a warning.
Change-Id: Id27a6447dba9b6eda07933139a3f07edd71c8fd6
Reviewed-on: https://code.wireshark.org/review/2872
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-06 01:33:31 +00:00
Guy Harris 570d52a844 Pull the record processing into netmon_process_record().
That combines more common code from the read and seek-read code
paths.

Also, separate out the individual metadata record types, with a comment
for each, to simplify the process of supporting some or all of them in
the future.

Change-Id: Ic8ded397d9550ec6013c1f5f138333b1ef5c37e5
Reviewed-on: https://code.wireshark.org/review/2869
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-06 01:13:44 +00:00
Guy Harris 3f7725174d Fix an error caught by enum-conversion warnings.
(Strong typing is for weak minds.

Human minds are weak.

Therefore, strong typing is for human minds.)

Change-Id: I2a973b6168235d5d1c7f2a5f8ac79b97b963d846
Reviewed-on: https://code.wireshark.org/review/2863
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-05 19:32:56 +00:00
Guy Harris c8bcdd5271 Fix whitespace issues.
Change-Id: I69f84ca8b947be8e06005c82526559e3bc8f6387
Reviewed-on: https://code.wireshark.org/review/2861
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-05 18:49:23 +00:00
Guy Harris 599b880e4c Handle the UTC timestamps in NetMon 2.3 files.
This addresses part of, but not all of, the issues in bug ten thousand,
one hundred, and ninety:

    https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=10190

(I'm spelling it out to make sure Gerrit doesn't think this change
*does* address all the issues in that bug, and mark it as RESOLVED
FIXED; I feel like I have to treat Gerrit as a dog or small child from
whom I'm trying to keep a secret - "honey, I'm taking the dog to the
vee eee tee".)

Change-Id: Ic234130c1ea84cfaf47901485dca775e168f71d0
Reviewed-on: https://code.wireshark.org/review/2859
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-07-05 18:46:57 +00:00
Peter Wu 16f8ba1bed catapult,irda: Fix ASAN crashes due to buffer underrun
The catapult dissector tripped on this random file I had. A quick look
at other dissectors which use a construct like "-1] *= '*\\[rn]" showed
packet-irda too, so fix that as well.

Change-Id: I4b5fadcacd0b09d0fb29bdefc3dd1f28aef9b593
Reviewed-on: https://code.wireshark.org/review/2802
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-07-03 13:02:24 +00:00
Michal Labedzki 099bc9342f Logcat: Remove commented code
"g_strlcpy" guarante that "dest" to be null-terminated.

Also cosmetic change from file_subtype to encap.

Change-Id: If188a08cf34dd9def4203404962571c273740636
Reviewed-on: https://code.wireshark.org/review/2718
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-06-30 13:24:36 +00:00
Guy Harris 765405da3e Update a comment.
Also, make the block of code containing that comment intended
consistently with spaces.

Change-Id: I8e8eb346833662f15c53ece5869b12cc430bad11
Reviewed-on: https://code.wireshark.org/review/2661
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-25 21:06:03 +00:00
Guy Harris 474b90e358 Boost the maximum snapshot length to 262144, for USBPcap.
Change-Id: I104bd9d1519298a0e4ff818f1cf821df594b3491
Reviewed-on: https://code.wireshark.org/review/2658
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-25 20:43:04 +00:00
Guy Harris 8cde7a72d6 Boost the maximum packet size to 131072.
Libpcap 1.6/tcpdump 4.6 will support up to 131072, as the MTU on the
Linux loopback device is 65536 on at least some versions of the kernel,
and that doesn't count the fake Ethernet header, so the maximum packet
size is 65549; they went to the next power of 2 up.

Change-Id: Ibfc66d01ef8ef7387887a75c2b567159bb78ac0f
Reviewed-on: https://code.wireshark.org/review/2655
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-25 20:27:11 +00:00
Jeff Morriss 03f7a4bedc Remove wiretap/AUTHORS (after ensuring all names are present in the top-level AUTHORS file).
Change-Id: Ic3aa46c770f373541572e8507ec08b3439f3077f
Reviewed-on: https://code.wireshark.org/review/2645
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-25 14:43:16 +00:00
Jeff Morriss 5aa6cf9dd5 Update my email address in a couple more spots.
Change-Id: I787ae2651a8083bc3082e5cb85dbd849823a16ca
Reviewed-on: https://code.wireshark.org/review/2638
Reviewed-by: Jeff Morriss <jeff.morriss.ws@gmail.com>
2014-06-25 02:15:55 +00:00
Guy Harris 38e0ad08d3 Replace C++-style comments with "#if 0"/"#endif".
checkapi complains about C++-style comments, as some C compilers (IBM
XLC, for one) reject them by default, and gcc -pedantic might do so as
well.

Change-Id: I1719da03d2fed0fe97574e200dd79434b3d760cd
Reviewed-on: https://code.wireshark.org/review/2556
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-22 18:49:24 +00:00
Michal Labedzki 4a3d0b8684 Logcat: Fix dump formats
Some dump formats are not exactly what should be done,
so fix them and try to little improve them (mostly by space padding %-8s)

Change-Id: I8ee38479c848abc0a2eaff30ce733e4b60930ac4
Reviewed-on: https://code.wireshark.org/review/2550
Reviewed-by: Michal Labedzki <michal.labedzki@tieto.com>
2014-06-22 16:57:26 +00:00
Joerg Mayer c11ae8ac82 Add .rc files to the sources to have them included in the build
Change-Id: I84dda519e617b24d92fcf374670a4a6ee6f488ee
Reviewed-on: https://code.wireshark.org/review/2506
Reviewed-by: Jörg Mayer <jmayer@loplof.de>
2014-06-20 23:58:22 +00:00
Pascal Quantin e1c0674564 Long and short names are inverted
Change-Id: Ief3c86562d5eadb845b5a32dc704a61ccd27fdf6
Reviewed-on: https://code.wireshark.org/review/2443
Reviewed-by: Pascal Quantin <pascal.quantin@gmail.com>
2014-06-19 19:14:49 +00:00
AndersBroman f5476e90a0 Explicitly declare/cast 'unsigned <variable>' as 'unsigned int <variable>'
Applying part of Bug 7825

Change-Id: I460b5c61b04d793ccc27c25debbd5e8f08bc6974
Reviewed-on: https://code.wireshark.org/review/2280
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-16 22:03:12 +00:00
U-beauty\bdn 39ac6f2d02 HPM.2 IPMI Trace Data encapsulation format
Added a mapping between DLT_IPMI_HPM_2 link-layer header type to the IPMI Trace Wiretap encapsulation.

Change-Id: I458d44ad0f51beecfe5589e0e9cb75f4771d866b
Reviewed-on: https://code.wireshark.org/review/2054
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-06-09 08:54:38 +00:00
U-beauty\bdn 977a811217 IPMI trace dissector (without PCAP-dependent part).
Added KCS and TMode protocol dissectors.
Request/response logic has been revised.
Saved request data logic has been revised.
Added Get Message command response dissector.
Added missing PICMG command dissectors.
Added new PICMG command dissectors.
Added new PPS OEM command entries.
Added VITA 46.11 command dissectors.

From: Bill Meier:
- refs to value_strings/range_strings in hf[] entries, by convention, should use VALS/RVALS macros;
- refs to true_false_strings should use TFS(&...) macro.
  also: true_false_string definitions should not be defined as arrays.
- remove some unneeded #includes (packet-ipmi.c).
- Do some re-indentation.
- Add editor-modelines as needed.

bug: 10004
Change-Id: Ib269b35784c0b70892d1e0111bcfb483ea64092c
Reviewed-on: https://code.wireshark.org/review/1185
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-06-06 06:43:45 +00:00
Michael Tüxen 91afb5a36e The subtype_seek_read() functions populate *phdr, not wth->phdr.
So don't use the values.
This problem show up on pcapng files resulting from captures of
multiple interfaces.

Change-Id: I30b0598602b0b69233107d35be4360475d8648d8
Reviewed-on: https://code.wireshark.org/review/1950
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-06-04 17:42:56 +00:00
Michal Labedzki c6d175ef67 Guarantee that open routines are initialized
Open routines need to be initialized before try to open
capture or add/remove routine.

Change-Id: Ic3b88eef947ebd4a3dd2edf8120bb6bd8aec0765
Reviewed-on: https://code.wireshark.org/review/1874
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-06-04 00:48:59 +00:00
Balint Reczey 5c6403b27b Honor configured CMAKE_INSTALL_LIBDIR when installing libraries
Change-Id: I860c9408ed01e9567992b0dcf5c6c6421344c13e
Reviewed-on: https://code.wireshark.org/review/1862
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-05-30 13:36:02 +00:00
Guy Harris 6dffc3b7e3 Distinguish between "events" and "reports".
Have two different classes of file-type-specific records - "events" and
"reports".  An "event" indicates something that happened in the capture
process, such as a status transition on the network; a "report" just
gives information not corresponding to something happening in the
capture process, such as capture statistics.

Note that both of those should be dissected and displayed like packets,
and leave open the possibility of file-type-specific records whose
contents should be processed and saved but not displayed in the packet
list.

Shorten "file_type_specific" to "ft_specific".

Change-Id: I2342d82ef992c794b76f354c057823dd5eb371e6
Reviewed-on: https://code.wireshark.org/review/1779
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-24 21:54:45 +00:00
Guy Harris d5b173009c Fix a compiler warning.
Change-Id: I5b4b518982dc6033842b1e791e67d2faddfb5487
Reviewed-on: https://code.wireshark.org/review/1777
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-24 21:21:33 +00:00
Guy Harris 1b6cc6320e Add support for plugins to handle pcap-ng block types.
We rename "file format" plugins to "libwiretap" plugins, as they can
register as read handlers for a new file type, read/write handlers for a
pcap-ng block type (or both).

To register as a pcap-ng block type handler, in the
register_wtap_module() routine of your plugin, call
register_pcapng_block_type_handler() with the pcap-ng block type and
pointers to your routines to read and write those blocks.  Those
routines should read and write REC_TYPE_FILE_TYPE_SPECIFIC records, with
the block type in the pseudo-header for the record in the struct
wtap_pkthdr structure, with time stamps stored in that structure, and
with a blob of data for the rest of the record.

This is for bug 8590.

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

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

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

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

Change-Id: Idb40b78f17c2c3aea72031bcd252abf9bc11c813
Reviewed-on: https://code.wireshark.org/review/1773
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-24 18:31:25 +00:00
Gerald Combs 285405a0d7 1.11.4 → 1.99.0.
Change-Id: I5b0f713fdbc63e78f4f52177317c0e536aca3044
Reviewed-on: https://code.wireshark.org/review/1761
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-05-23 20:57:42 +00:00
Guy Harris 8ce793c09b file_seek() sets the error variable; no need to set it ourselves.
Change-Id: I637326841e6db562b0896e77c86c4ebf9c3b0561
Reviewed-on: https://code.wireshark.org/review/1756
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 18:10:39 +00:00
Guy Harris 7f6f5fc5f4 Fix comment.
Change-Id: Ifa526ff6a9f685a0956e1b2e49f35fecfd290cb0
Reviewed-on: https://code.wireshark.org/review/1755
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 18:07:53 +00:00
Guy Harris ae1ec156e8 Get rid of extra trailing blank lines.
Change-Id: I2cb1fdc3bc27c0075cc1e4910dc32088d2695bff
Reviewed-on: https://code.wireshark.org/review/1754
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 18:03:08 +00:00
Guy Harris 1a9336b0cf Fix a comment.
Change-Id: I91a5c52939a516807431494a4120aecc5b0dba41
Reviewed-on: https://code.wireshark.org/review/1753
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 17:59:41 +00:00
Guy Harris f8d7255e78 Get rid of extra trailing blank lines.
Change-Id: I161bdbf08b35bfbfa1a19fc4facc5b72ef2b0390
Reviewed-on: https://code.wireshark.org/review/1752
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 17:57:53 +00:00
Guy Harris a267f16303 Get rid of trailing blank lines.
Change-Id: I53c560557d70e2a1cb78de37aad17d92a714ce2a
Reviewed-on: https://code.wireshark.org/review/1751
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 17:53:41 +00:00
Guy Harris f6f5985375 Fix the type of i4b_read_rec() to reflect what it actually returns.
Change-Id: Iafd4996a724418460043abda455a237a539c7925
Reviewed-on: https://code.wireshark.org/review/1750
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 17:52:18 +00:00
Guy Harris bbfdfa400d Remove trailing blank lines.
Change-Id: I62171eb8686fc31af901367182186ccd79098fe2
Reviewed-on: https://code.wireshark.org/review/1749
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 17:48:16 +00:00
Guy Harris a344c9736e Revert "Allow wtap_read() and wtap_seek_read() to return non-packet records."
This reverts commit c0c480d08c.

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

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

Change-Id: I34a45b54dd361f69fdad1a758d8ca4f42d67d574
Reviewed-on: https://code.wireshark.org/review/1736
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-23 03:02:32 +00:00
Peter Wu cea149aa89 wiretap: fix regression, missing initialization
wtap_dump_open() allocates an empty wtap_dumper struct such that
interface_data is not initialized. Fix this by adding the member back.

Regression from 3aee917058 ("wiretap:
remove unused code, drop number_of_interfaces").

Bug: 10113
Change-Id: Ia6259bf50b25d5e7aa837b0fb7396b07d5d3c72c
Reviewed-on: https://code.wireshark.org/review/1672
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-05-17 17:22:37 +00:00
Peter Wu 3aee917058 wiretap: remove unused code, drop number_of_interfaces
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>
2014-05-17 12:41:50 +00:00
Guy Harris dcdd076ab0 pcapng->interface_data is an array of interface_data_t.
Change-Id: Ida44a8820948d509e74ab8475979e8695abb4288
Reviewed-on: https://code.wireshark.org/review/1630
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-14 02:26:47 +00:00
AndersBroman 3157bf6ba5 isprint() -> g_ascii_isprint()
Change-Id: Ia586ef8ce500d5fc7578c52014206fa7a7eaea41
Reviewed-on: https://code.wireshark.org/review/1624
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-05-13 16:14:07 +00:00
Guy Harris a1b1c8bed5 Revert "Refactor Wiretap"
This reverts commit 1abeb277f5.

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

Change-Id: I622b1bb243e353e874883a302ab419532b7601f2
Reviewed-on: https://code.wireshark.org/review/1568
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-09 05:21:01 +00:00
Guy Harris a651f3e5ed Revert "Try to fix the build boot by changing the signature of catapult_dct2000_dump() to the declared one."
This reverts commit f5a0d7e897.

There's a lot more work needed to fix this change; that's not the only broken file.  I'm going to be reverting the whole thing.

Change-Id: I8e9bb3902f7e398ccb71c66711869c3dd338271c
Reviewed-on: https://code.wireshark.org/review/1569
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-05-09 05:20:29 +00:00
AndersBroman f5a0d7e897 Try to fix the build boot by changing the signature of
catapult_dct2000_dump() to the declared one.

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

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

bug:9607
Change-Id: Ife858a61760d7a8a03be073546c0e7e582cab2ae
Reviewed-on: https://code.wireshark.org/review/1485
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-09 03:04:39 +00:00
Michael Mann 078daeb27f Populate heuristic extension list during initialization and not during each call to heuristic_uses_extension.
Change-Id: I7e484de65c49060793a91cc11cb211effa2006db
Reviewed-on: https://code.wireshark.org/review/1494
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-05-08 00:31:29 +00:00
Evan Huus 72fc075e9a Fix potential invalid-reads in catapult files
As caught by CppCheck, the conditions checking that n is in bounds should
occur *before* the conditions using n as an index so that if n is out of bounds
we don't try and use it anyways.

Change-Id: I107c983153aa12203f8c88b14e1addd3807d6b6e
Reviewed-on: https://code.wireshark.org/review/1415
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-04-28 21:02:54 +00:00
Philip Rosenberg-Watt cd68b4744c Add dissector for LINKTYPE_EPON
See IEEE Standard 802.3-2012 Section 5, Clause 65 and CableLabs DPoE
Security and Certificate Specification 1.0, Section 6.

Currently dissects 1G mode. 10G mode will be added when hardware is
available.

Change-Id: I6232af9bf6807644ef66a120d97e5fa5927988fe
Reviewed-on: https://code.wireshark.org/review/1284
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-04-28 15:26:32 +00:00
Guy Harris 662e4bd556 wtap_read() and wtap_seek_read() handle caplen > len; don't do it here.
Change-Id: Iac083abdbaaa4666124e5b296e6f8306ee90f32d
Reviewed-on: https://code.wireshark.org/review/1363
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-25 21:31:24 +00:00
Guy Harris 4f8c8c215d This doesn't have separate captured and actual length, either.
Change-Id: I4605bde8a2951ea78d507bab6fcf004ebef6f38f
Reviewed-on: https://code.wireshark.org/review/1362
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-25 21:26:18 +00:00
Guy Harris 6335782ccd Put the common code for reading Logcat packets into a routine.
Then have the read and seek-read routines both use that routine.

Change-Id: I3d11df82644207d0ae59486231c91e1f044090ab
Reviewed-on: https://code.wireshark.org/review/1361
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-25 21:17:01 +00:00
Guy Harris 6d6094e349 Don't fail if a pcap-NG PB or EPB has caplen > actual len.
We don't fail for other file types; there's no point in failing for
pcap-NG.  wtap_read() will ensure that caplen <= len.

Make wtap_seek_read() ensure that caplen <= len as well.

Fixes bug 10037.

Change-Id: I41fbcf54341ea0429cef875442ea1f1377177a5f
Reviewed-on: https://code.wireshark.org/review/1353
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-25 17:44:47 +00:00
Stig Bjørlykke bd38b3152d Support out-of-source checkapi
Always call $(top_srcdir)/tools/checkAPIs.pl with -sourcedir=$(srcdir)
from Makefile.am to allow out-of-source 'make checkapi'.

Change-Id: I60d7e0079984a8ededdacf4517a0738486fa7973
Reviewed-on: https://code.wireshark.org/review/1294
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-04-25 04:23:46 +00:00
Gerald Combs d73d1f14b3 1.11.3 → 1.11.4.
Change-Id: I0bf8792b9b524ae4d8e1022b234e2510972c7019
Reviewed-on: https://code.wireshark.org/review/1154
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2014-04-15 17:29:19 +00:00
Michal Labedzki 5d51a8dc08 Fix wtap displayable names
Also fix indentions.

Change-Id: I5440859aaf3ec1dbf416d9da6c1dab71bec803d8
Reviewed-on: https://code.wireshark.org/review/1094
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-04-14 06:27:34 +00:00
Guy Harris fc48f57214 Add a dissector for Apple's PKTAP headers.
It automatically works for LINKTYPE_PKTAP and, by default, for
LINKTYPE_USER2; if any other dissector is specified for LINKTYPE_USER2,
that dissector overrides PKTAP.

Change-Id: Ic00ac8a81c6101e45d638d337aef42df3920da12
Reviewed-on: https://code.wireshark.org/review/903
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-04-01 17:03:29 +00:00
Guy Harris dc4c26cbb8 Update encap_table_base.
As the comment after the WTAP_ENCAP_ list says, "After adding new item
here, please also add new item to encap_table_base array".

Change-Id: I918603fa271978b3a81525466c5f4067efc7a783
Reviewed-on: https://code.wireshark.org/review/897
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-04-01 05:59:30 +00:00
Alexis La Goutte 757aa33220 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^\# \$Id\$/,+1 d') (start with dash)

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

Change-Id: I318968db2b8512ba1303b5fc5c624c66441658f0
Reviewed-on: https://code.wireshark.org/review/879
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2014-03-31 18:30:52 +00:00