Commit Graph

650 Commits

Author SHA1 Message Date
Stig Bjørlykke cc679ca5ce Qt: Add check for field extractors
The proto tree is needed in several cases when using Lua field extractors,
because they fetch values from the tree.  Without a valid field extractor
a Lua plugin may misbehave and display wrong column info.

This fixes column issues when:
- Calling resetColumns() in Qt.  This involves adding a display filter,
  change time display format, change name resolution and other changes
  in UI which requires column updates.
- Print summary lines.
- Export as CSV and PSML.

Change-Id: Ieed6f8578cdf2759f1f836cd8413a4529b7bbd80
Reviewed-on: https://code.wireshark.org/review/13708
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2016-02-05 05:35:02 +00:00
João Valverde 265a41e14d autotools: Don't use "user variables" to set build flags
GNU coding standards recommend against it and automake is designed
around it.

This allows overriding the global build flags using AM_CFLAGS, etc.,
or per object flags, something that is difficult or impossible currently
because of automake precedence rules.

Change-Id: I3f1ea12e560af5a46b2f04b342b1882bbf123f12
Reviewed-on: https://code.wireshark.org/review/13455
Petri-Dish: João Valverde <j@v6e.pt>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: João Valverde <j@v6e.pt>
2016-01-28 18:13:48 +00:00
Peter Wu 884795e60f wslua: do not free TVB for data sources
Bug: 12050
Change-Id: If094f78f683776ba2ea3ddd848ec9018cba064b8
Reviewed-on: https://code.wireshark.org/review/13554
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2016-01-27 09:25:39 +00:00
Peter Wu c1832a8358 wslua: fix memleak on error path of Tvb:bytes()
Delay allocation of a GByteArray to avoid a memleak on errors.

Change-Id: I2b2ae6d33407500e81a4f45b86ef82720d3443a4
Reviewed-on: https://code.wireshark.org/review/13553
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2016-01-26 21:36:06 +00:00
Guy Harris bc5a0374bf Add the packet number to the packet_info structure, and use it.
That removes most of the uses of the frame number field in the
frame_data structure.

Change-Id: Ie22e4533e87f8360d7c0a61ca6ffb796cc233f22
Reviewed-on: https://code.wireshark.org/review/13509
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-24 03:41:28 +00:00
Guy Harris a7f470fa24 More pinfo->fd->abs_ts to pinfo->abs_ts.
Change-Id: I70db0a345cc4c5c57c454371deb4f92f9ac4b9ac
Reviewed-on: https://code.wireshark.org/review/13501
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-23 03:58:56 +00:00
Guy Harris 9141bd9700 Add more fields to packet_info structure and use them.
Add fields for the absolute time stamp (and another field for a presence
flag for the absolute time stamp) and the packet encapsulation for the
packet.

This lets us remove the field for the packet encapsulation in the
frame_data structure; do so.

Change-Id: Ifb910a9a192414e2a53086f3f7b97f39ed36aa39
Reviewed-on: https://code.wireshark.org/review/13499
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-23 03:50:58 +00:00
Stig Bjørlykke ebdaace002 Lua: Added reload_lua_plugins
This makes it possible to trigger reloading Lua plugins from
within a Lua plugin.  This can be used when having a plugin to
update local plugins from a external source.

Renamed reload() to reload_packets() to clarify what's reloaded,
and added a alias (marked as obsoleted) from reload().

Change-Id: I4e529992af5f651613950329e73718dbda317d2e
Reviewed-on: https://code.wireshark.org/review/13024
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2016-01-11 07:43:36 +00:00
Guy Harris c67c6e8f30 Add routines to add an item and return the item's real length.
proto_item_get_len() is *not* guaranteed to return a correct value.
Even if there's a non-null tree item, it might be pointing to a "faked"
item; it really shouldn't be used.

So add proto_tree_add_item_ret_length() and
proto_tree_add_item_new_ret_length(), which calculate the real length
themselves and return it through a pointer.

Fix as many places as we straightforwardly can to use them rather than
to use proto_item_get_len().  (There's a Lua API for
proto_item_get_len(), so we keep it around, but we should add Lua APIs
for the new routines, and deprecate the old API.)

Fix ptvcursor_add() to do the same thing that
proto_tree_add_item_ret_length() and
proto_tree_add_item_new_ret_length() do.

Split the TRY_TO_FAKE_THIS_ITEM macros into a macro to check for the
tree being null and to try to fake the item.  We don't always use the
former macro, as we might need to do more than just return NULL if the
incoming tree is null (for example, calculating the item's real length
and using it...).

new_field_info() never returns NULL; remove checks for it.  The check
for a null tree is done before the calls to new_field_info().

Change-Id: I002a218d1f810c73e0de837e0ac6ebcde21bacec
Reviewed-on: https://code.wireshark.org/review/13139
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2016-01-09 02:26:06 +00:00
Guy Harris 07d0a59cb4 Don't cast away constness.
Change-Id: I37a1923c2e463346244cd5e56daf22122d119d78
Reviewed-on: https://code.wireshark.org/review/12976
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-31 22:34:20 +00:00
Guy Harris bc13e834cc Don't cast away constness for the key in g_hash_table_lookup().
Change-Id: Ibd5cf8947028d90a734de629e3c4202af9d0514b
Reviewed-on: https://code.wireshark.org/review/12887
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-28 22:24:56 +00:00
Stig Bjørlykke 39cc323722 Lua: Fix switch-case braces.
+ fixed a comment.

Change-Id: Ib1a8449054afde3b4df7ad57f0c3da07016281c2
Reviewed-on: https://code.wireshark.org/review/12635
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-14 21:19:34 +00:00
Stig Bjørlykke 28207e5b82 Lua: Free Pref enum values
Free the Pref enum values in Pref__gc().

Change-Id: I4d66dbe7ee4879f3b14094135887d78cba876ea3
Reviewed-on: https://code.wireshark.org/review/12628
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 19:57:43 +00:00
Guy Harris 56584b52e0 Add comments to explain what we're doing with strings.
Change-Id: I043d02092464ec8cbbec08d11b29dfee248116bf
Reviewed-on: https://code.wireshark.org/review/12629
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 19:26:11 +00:00
Stig Bjørlykke 5625b62aa4 Lua: Free Pref default string
Store the Pref default string value and ensure this is freed both
when registering the pref and when not.

Use g_malloc0 to allocate Pref and avoid several init's.

Change-Id: I5f97a15d06068d7805f02f7c7feea61f9b2030f5
Reviewed-on: https://code.wireshark.org/review/12626
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 19:01:02 +00:00
João Valverde a1c28c6805 wslua: Change macro to avoid nuisance warning [-Wredundant-decls]
Change-Id: I358735b5ff69e414a227ce8c69e75ff3e04ad3b3
Reviewed-on: https://code.wireshark.org/review/12624
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 18:26:36 +00:00
Stig Bjørlykke bfac764797 Lua: Cleanup ProtoField_time
Reverted some unneeded changes from 7f074364 because it's currently
only used for FT_ABSOLUTE_TIME.

Also fixed some small indent issues.

Change-Id: I923e35bf8ad4e991518bee973b87d4be06137463
Reviewed-on: https://code.wireshark.org/review/12539
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-12-14 05:19:59 +00:00
Guy Harris 3d0f9a4397 No need to free the value of a string preference in the garbage collector.
The preference has already been deregistered at that point, so the value
of the preference has been freed and the pointer to it has been set to
null, so it's already been freed and its pointer no longer points to it
and the free from Lua will do nothing.
Change-Id: I11bf74932303151483cd3699659f67d64b466759
Reviewed-on: https://code.wireshark.org/review/12606
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-14 00:13:11 +00:00
Michael Mann 56aa05227f Create a way to register "capture" dissectors.
Capture dissectors could be architected like dissection dissectors, with tables and subtables and possibly using tvbs to pass there data instead of raw byte arrays.  This is a first step towards that by refactoring capture_info_packet() to work off of a "capture dissector table"

Registering the capture dissection functions instead of calling them directly also clears up a bunch of dissector header files who sole purpose was providing the capture dissection function definition.

Change-Id: I10e9b79e061f32d2572f009823601d4f048d37aa
Reviewed-on: https://code.wireshark.org/review/12581
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-13 14:34:13 +00:00
Stig Bjørlykke b031e538f7 Lua: Check for empty name in ProtoField
The check in tmp_fld_check_assert() does terminate with g_error
if given an empty string as name, so we have to check for this.

Change-Id: I084e3e715bd319484a52f60ef90c1a2aea30df1b
Reviewed-on: https://code.wireshark.org/review/12534
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-11 16:56:43 +00:00
Stig Bjørlykke f142595db7 Lua: Validate ProtoExpert.new arguments
Change-Id: I0da829041cda48a35341c315a7889b557b6334d7
Reviewed-on: https://code.wireshark.org/review/12527
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-12-11 09:42:50 +00:00
Stig Bjørlykke ea1789f925 Qt: Reload Lua expert infos
Support reloading Lua plugins with expert infos.
Use the same delayed deregister logic as for fields.

Change-Id: I36efa0820050b3a7afed4de7a8b0fa16805e8dfa
Reviewed-on: https://code.wireshark.org/review/12498
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-12-11 05:17:58 +00:00
Michael Mann 1474f49f19 new_register_dissector -> register_dissector for remaining uses.
Mostly plugins, but also LUA and generated skinny dissector.

Change-Id: Ifeb4205442f9a60875266b4e82841ff38b4fdb63
Reviewed-on: https://code.wireshark.org/review/12515
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-12-11 03:42:37 +00:00
Uli Heilmeier ff5719c6e8 Lua: Switch URL to documentation to HTTPS
URL to documentation with https as suggested by Alexis.
(s. commit ecc9c74326)

Change-Id: I64d82b0c07cce5658eb8f4ae758f1a42946b837a
Reviewed-on: https://code.wireshark.org/review/12181
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-26 15:45:07 +00:00
Uli Heilmeier ecc9c74326 Lua: fix URL to documentation
The Lua reference has been moved from User's Guide to Developer's Guide.

Change-Id: I3489d774e54310ce49997e33d5318adf5e0bb2bc
Reviewed-on: https://code.wireshark.org/review/12128
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-25 09:24:35 +00:00
Stig Bjørlykke 94b9907d0f Lua: Validate Proto() arguments
Check if description (protocol name) and short_name are used before
registering the protocol.  This because proto_register_protocol() makes
sure there's not already a protocol with any of the names registered
and duplicates will be reported with a g_error() which terminates the
Wireshark unexpectedly.

Also check if short_name contains valid characters.

Give appropriate error messages.

Bug: 11739
Change-Id: Ib9776a2a3406ae5278ce744defd61864ebed0282
Reviewed-on: https://code.wireshark.org/review/11995
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-21 20:30:26 +00:00
Stig Bjørlykke 8383cb923b Lua: Do not deregister Listener in __gc.
Listeners should not be deregistered in __gc because they will go out
of scope while in use.  Instead free allocated data when deregistering
the Listener (Listener.remove() and Reload Lua Plugins).

Bug: 11722
Change-Id: Iadf6506757df06e476ac3cac38c05f1d1d497dc4
Reviewed-on: https://code.wireshark.org/review/11924
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-17 21:51:42 +00:00
Guy Harris 95fd55e56b For now, call the finish routine in Lua file writers "close".
If we ever change the way file writers work, in a fashion incompatible
with the existing way they work, we'll also rename this member - and get
rid of checks for earlier versions of the Lua interface.

Change-Id: I64065944fa31371f5249cafd930c18f180ad7299
Reviewed-on: https://code.wireshark.org/review/11879
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-16 19:18:15 +00:00
Stig Bjørlykke 561bcff027 Lua: Fixed some argument # in argument errors.
Change-Id: I1dba41c9f129d368096dd69a0f40fa2164311124
Reviewed-on: https://code.wireshark.org/review/11852
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-15 22:05:51 +00:00
Stig Bjørlykke a8e774034b Lua: Check for nil valuestring for integer fields.
Added a check for nil valuestring for all ProtoField integer types
to avoid lookup when argument is not set.

Change-Id: Ib4c016b69ee77dbea4bb83ac93c0d9ae9f48f236
Reviewed-on: https://code.wireshark.org/review/11845
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-15 19:56:38 +00:00
Stig Bjørlykke e6b5f015e2 Lua: Added support for ProtoField framenum type.
Change-Id: I1d4cddd4026f08416005f2b3212536b3984d1a8d
Reviewed-on: https://code.wireshark.org/review/11834
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-15 18:33:16 +00:00
Stig Bjørlykke 13101020e1 Lua: Disallow ProtoField FRAMENUM to fetch from Tvb.
A ProtField type FRAMENUM cannot fetch value from a Tvb.

Change-Id: Iff0f6df8b00445855c9030dcfa753daa62262171
Reviewed-on: https://code.wireshark.org/review/11832
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-11-14 21:22:51 +00:00
Guy Harris 09f5ff4fc6 Call the dumper routine to finish write a file the "finish" routine.
It doesn't actually *close* any handle, so it's best called a "finish"
routine rather than a "close" routine.

In libwiretap modules, don't bother setting the finish routine pointer
to null - it's already initialized to null (it's probably best not to
require modules to set it).

Change-Id: I19554f3fb826db495f17b36600ae36222cbc21b0
Reviewed-on: https://code.wireshark.org/review/11659
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-09 19:55:13 +00:00
Michael Mann 74541a9596 Don't allow multiple registrations of a protocol in dissector tables.
The target here is the Decode As dialog where protocols have multiple registrations into a dissector table and that shows up as multiple entries in the Decode As dialog list with the same name so users are unsure which "dissector" they are choosing.

The "default" behavior (done in this commit) is to not allow duplicates for a dissector table, whether its part of Decode As or not.  It's just ENFORCED for Decode As.

Bug: 3949
Change-Id: Ibe14fa61aaeca0881f9cc39b78799e314b5e8127
Reviewed-on: https://code.wireshark.org/review/11405
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-11-04 12:39:40 +00:00
Guy Harris 58431e2f6a Don't include libwireshark headers from libwiretap.
Move the definitions of hashipv4_t and hashipv6_t to wiretap/wtap.h, as
that's the main place they're used.  Change them a bit not to depend on
other stuff from libwireshark, and change the code as required by those
changes.

This should fix the Solaris build; apparently, the Sun^WOracle compiler
is generating code for static inline functions even if they're never
called, so that libwiretap ends up including code that calls tvbuff and
wmem functions.

There's probably further cleanup that could be done here, but this
should at least fix the build, as well as getting rid of a dependency
between two libraries that are at least somewhat independent (libwiretap
should *not* depend on libwireshark, as some programs use libwiretap but
not libwireshark, and, ultimately, we probably want it to be possible to
use libwireshark without libwiretap but that'd be more work).

Change-Id: I91c745282f17d7c8bff7809aa277eab2b3cf47c1
Reviewed-on: https://code.wireshark.org/review/11537
Petri-Dish: Guy Harris <guy@alum.mit.edu>
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-11-04 00:56:44 +00:00
Gerald Combs 86fe2be4dc Use address functions instead of ADDRESS macros in asn1 and epan
Replace CMP_ADDRESS, COPY_ADDRESS, et al with their lower-case
equivalents in the asn1 and epan directories.

Change-Id: I4043b0931d4353d60cffbd829e30269eb8d08cf4
Reviewed-on: https://code.wireshark.org/review/11200
Petri-Dish: Michal Labedzki <michal.labedzki@tieto.com>
Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-10-22 11:45:56 +00:00
Peter Wu 53cfeca535 wslua: fix memleak in lua_prime_all_fields
Would leak some bytes after startup.

Caught by LeakSanitizer.

Change-Id: I4644f204343ce5a803a7dfdedac6a1960882807f
Reviewed-on: https://code.wireshark.org/review/10859
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-10-07 13:57:18 +00:00
Peter Wu 82b225898b wslua: fix crash when a LUA error is raised in TRY block
The dissect_tcp_pdus function in LUA is passed two LUA functions that
get the PDU length and the dissect a PDU. When one of these functions
fail, a longjmp is made to the the caller of lua_pcall.

This is no problem for the PDU length function, but the PDU dissect
function is wrapped in a TRY/CATCH/ENDTRY block which also uses longjmp
and need to be fully executed. Without doing so, LUA exceptions will
crash on a weird location (except_pop).

Fix the crash by not using luaL_error, but throw dissector errors which
properly breaks out of the tcp_dissect_pdus C function and then convert
it to a LUA error such that the dissector can handle it.

Test with `tshark -X lua_script:crash.lua -r ssl.pcap`:

    trivial_proto = Proto("trivial", "Trivial Protocol")
    function dissect_foo(tvb, pinfo, tree)
        error("triggering a LUA error");
    end
    function get_pdu_len(tvb, pinfo, tree) return 5; end
    function trivial_proto.dissector(tvb, pinfo, tree)
        dissect_tcp_pdus(tvb, tree, 5, get_pdu_len, dissect_foo)
    end
    tcp_table = DissectorTable.get("tcp.port")
    tcp_table:add(443, trivial_proto)

It should not crash and will print this:

    Lua Error: dissect_tcp_pdus dissect_func: [string "crash.lua"]:3: triggering a LUA error

Change-Id: Ibd079cc5eb3a2e4d2e62ea49a512fa2cc8e561ea
Reviewed-on: https://code.wireshark.org/review/10685
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
Reviewed-by: Evan Huus <eapache@gmail.com>
2015-10-05 02:30:16 +00:00
Peter Wu f52d1d52a6 wslua: do not pop from empty stack on newer LUA versions
Fixes this failure:

    tshark: lapi.c:175: lua_settop: Assertion `(-(idx+1) <= (L->top - (func + 1))) && "invalid new top"' failed.

Found using LUA 5.2 compiled with -DLUA_USE_APICHECK. Note that the
value returned by luaopen_bit does not affect the size of the stack
after using lua_call; if there are excess return values, then these will
be dropped after calling lua_call. See http://www.lua.org/pil/26.2.html

I also verified that the stack is still empty after calling all
wslua_reg_module functions.

Change-Id: Ia72635277ca4d8077e47a5c472391a78fe6d311e
Reviewed-on: https://code.wireshark.org/review/10664
Petri-Dish: Peter Wu <peter@lekensteyn.nl>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Peter Wu <peter@lekensteyn.nl>
2015-09-30 12:31:56 +00:00
Gerald Combs 6d10efc6dd Qt: Add the Dissector Tables dialog.
Add the "Internals" menu under the View menu instead of at the top level
for now at least. Add the Dissector Tables dialog there.

Change-Id: Ieb23b0015591bac196e4ef94e3443832288333f9
Reviewed-on: https://code.wireshark.org/review/10654
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-09-27 16:19:05 +00:00
Hadriel Kaplan f526468bd3 Coverity CID 1167971-1167974: constant expressions in wslua_int64
Get rid of false-positive coverity issues by using a macro instead
of source code if-statement.

Bug: 11501
Change-Id: I07f478ed334931f05bdfb87cb8f614b16bbf8fa8
Reviewed-on: https://code.wireshark.org/review/10376
Petri-Dish: Hadriel Kaplan <hadrielk@yahoo.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
2015-09-04 12:35:49 +00:00
Stig Bjørlykke 68fa739ef1 Lua: Check if having listeners before remove
This avoids a warning when trying to remove a listener twice.
  g_ptr_array_remove: assertion 'array' failed

Change-Id: I0bcbbbe3b3393a8455b51fad80c5716fc38ac50e
Reviewed-on: https://code.wireshark.org/review/10370
Petri-Dish: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-09-03 16:07:37 +00:00
Stig Bjørlykke 6b9a628e54 Lua: remove unneeded todo comments
Change-Id: I2591a0f21092a251e6fc4393e97ae0594318dfdf
Reviewed-on: https://code.wireshark.org/review/10214
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-08-23 18:38:13 +00:00
Hadriel Kaplan d32c3dab46 Lua: check sscanf return value
Wslua's Int64.fromhex() and UInt64.fromhex() need to check the sscanf return
value. Found by coverity (CID 1191368 &1191369).

Change-Id: I67fba027e18341d429787515f94c794573dc41c2
Reviewed-on: https://code.wireshark.org/review/10183
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2015-08-21 17:42:32 +00:00
Gerald Combs 2ed3d91b45 Add the WLAN statistics dialog.
Instead of splitting the stats into two lists as with the GTK+ UI, add
everything to an expandable tree. This allows viewing nodes on more than
one network.

Rename the top-level Bluetooth menu item to Wireless and put the WLAN
stats dialog there.

The Qt UI matches SSIDs (WlanNetworkTreeWidgetItem::isMatch) a bit
differently than the GTK+ UI. Try to make the logic as plain as possible
since we'll likely have to update it in the future.

The addition of a custom BSSID address types means that we can't assume
that everything is AT_ETHER. Add routines for checking for broadcast
BSSIDs and comparing only the data portions of addresses.

Move PercentBarDelegate into its own module. Use it in
WlanStatisticsDialog.

Change-Id: Ie4214eb00671a890871380c4a07213ebfb7585c6
Reviewed-on: https://code.wireshark.org/review/10171
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-08-20 23:12:37 +00:00
Hadriel Kaplan 8fd719731b Lua: add FT_PROTOCOL as a ProtoField type
Bug: 11450
Change-Id: Ic77ddd193246c0202efcc9c11e61e8f6f85329c5
Reviewed-on: https://code.wireshark.org/review/10087
Petri-Dish: Hadriel Kaplan <hadrielk@yahoo.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Hadriel Kaplan <hadrielk@yahoo.com>
2015-08-18 03:50:58 +00:00
João Valverde 8fa4016347 make-taps.pl: Remove duplicate slash in pathname
Change-Id: Id5e13df24409267c405cdd05479610a8ba898289
Reviewed-on: https://code.wireshark.org/review/10047
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-08-16 11:55:24 +00:00
Stig Bjørlykke 5f13933ddb Lua: Free true_false_string values at reload
Change-Id: I8ab194bf094e82f08ddafb0a1451aec42989b93d
Reviewed-on: https://code.wireshark.org/review/10044
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-08-15 17:26:54 +00:00
Stig Bjørlykke 7833b93c66 Free all hfi->strings in free_deregister_field
Change-Id: I6fe78266a2e881fa80e1e3a3423b685d3c1764de
Reviewed-on: https://code.wireshark.org/review/10029
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-08-14 11:47:25 +00:00
Stig Bjørlykke bde416afcc Lua: Moved deregister out of wslua_cleanup
Change-Id: Ia43aa0e5f09400ef9923288b362256094a1241b8
Reviewed-on: https://code.wireshark.org/review/9998
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
2015-08-12 13:23:07 +00:00