Commit Graph

76 Commits

Author SHA1 Message Date
João Valverde 146c4b7016 uat: Fix warnings [-Wcast-qual]
uat_fld_tostr_cb_t callback *out_ptr argument is g_mallocated and
is to be freed by the caller so drop constness requirement to fix
the corresponding g_free warnings.

Change-Id: I1be25fa3e2f54fb32058ac0b5c1631b193b07701
Reviewed-on: https://code.wireshark.org/review/12943
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-31 22:56:34 +00:00
Guy Harris c14df7f7a8 Don't allocate something until we know we need it.
From change I1be25fa3e2f54fb32058ac0b5c1631b193b07701.

Change-Id: Iad01cd4c5920afcdc1f8329937f4141cf8bc0ab4
Reviewed-on: https://code.wireshark.org/review/12979
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-31 22:54:27 +00:00
Guy Harris 01dc475484 Don't cast away constness.
Save a non-const pointer and use it when freeing.

Fix some indentation while we're at it.

Change-Id: Iad2451130c4d1f252ad9f63b12205cd1aae70eb7
Reviewed-on: https://code.wireshark.org/review/12978
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-12-31 22:41:06 +00:00
Balint Reczey 9a9b1c9bba Spelling fixes for errors found by lintian
Change-Id: I889283902875193f4d3f3fd59788f59f8d9bcc20
Reviewed-on: https://code.wireshark.org/review/11945
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Reviewed-by: Anders Broman <a.broman58@gmail.com>
2015-12-07 07:11:54 +00:00
Gerald Combs a25c4841d2 Get rid of a couple of UAT macros.
Declare and fill in some functions normally instead of using macros.

Change-Id: I06323ecf53e0fe8ce7299168984838c87209acc5
Reviewed-on: https://code.wireshark.org/review/11336
Petri-Dish: Gerald Combs <gerald@wireshark.org>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-10-28 02:40:47 +00:00
Gerald Combs 61cef23486 Use an "Open" instead of a "Save" dialog for UAT prefs.
When selecting a file for a PT_TXTMOD_FILENAME UAT preference, use
QFileDialog::getOpenFileName instead of QFileDialog::getSaveFileName.
This matches current GTK+ behavior and the two preferences that use
PT_TXTMOD_FILENAME.

Add a comment noting that the PT_TXTMOD_FILENAME is Open-only.

Bug: 11027
Change-Id: I29eb056422949eda700d448621e508cf094fd7b7
Reviewed-on: https://code.wireshark.org/review/8678
Reviewed-by: Gerald Combs <gerald@wireshark.org>
2015-05-28 21:16:39 +00:00
Guy Harris 9d1ea65f3f Fix comments to reflect reality.
Change-Id: I63aeb49e442eb6eba5cdf35ded221894c1d0ea6c
Reviewed-on: https://code.wireshark.org/review/7223
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-18 00:48:52 +00:00
Guy Harris 859511db14 Make UAT record update callbacks return a success/failure indication.
Have them return TRUE on success and FALSE on failure.  Check the return
value rather than whether the error string pointer is null or not.

Change-Id: I800a03bcd70a6bbb7b217cf7c4800e9cdcf2189c
Reviewed-on: https://code.wireshark.org/review/7222
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-02-18 00:41:09 +00:00
Guy Harris 44e7ce54ff Remove some apparently-unnecessary includes of emem.h.
Change-Id: Ib7d1b587b439ff21ec6b7f1756ce6ccf25b66f80
Reviewed-on: https://code.wireshark.org/review/6635
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-18 20:19:05 +00:00
Guy Harris bc23f79729 UAT error string pointers should not be const pointers.
UAT error strings are usually allocated by g_strdup() or
g_strdup_printf(), and must ultimately be freed by the caller.

Make the pointer-to-error-string-pointer arguments to various functions
be "char **", not "const char **".

Fix cases that finds where a raw string was being used, as that won't
work if you try to free it; g_strdup() it instead.

Add a missing free of an error string.

Remove some no-longer-necessary casts.

Remove some unnecessary g_strdup()s (the string being handed to it was
already g_malloc()ated).

Change some variable declarations to match.

Put in XXX comments for some cases where the error string is just freed,
without being shown to the user.

Change-Id: I40297746a2ef729c56763baeddbb0842386fa0d0
Reviewed-on: https://code.wireshark.org/review/6525
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2015-01-13 20:20:03 +00:00
Michael Mann 7967ef9510 Remove emem APIs from UAT functionality.
Change-Id: I009c09f25d170e5c9aaaef713eaacb3252817856
Reviewed-on: https://code.wireshark.org/review/6460
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Evan Huus <eapache@gmail.com>
Petri-Dish: Anders Broman <a.broman58@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
2015-01-12 14:25:12 +00:00
Guy Harris 033f096ee9 Don't use ctype.h routines.
That avoids locale dependency and handles possibly-signed chars (which
we weren't always doing before).

Change-Id: Ieceb93029252f646397b6488f2df8a57c6d2a23d
Reviewed-on: https://code.wireshark.org/review/4794
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-10-17 23:11:18 +00:00
Guy Harris d853e92b75 Convert all the other function-defining macros.
(Perhaps C2099 will finally deprecate old-style function definitions and
allow you to declare parameters without names, just as C++ does, and
compilers will - obviously - not warn about those parameters being
unreferenced, obviating the need for __attribute((unused))__ and the
like.  And perhaps monkeys will fly out of....)

Change-Id: Iff295c1854e66eb4f9e02cdd5761e0191d371365
Reviewed-on: https://code.wireshark.org/review/4018
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-06 22:37:50 +00:00
Guy Harris 746a265f99 Try to suppress MSVC++ unused parameter warnings.
I haven't found a way to with MSVC to mark parameters in the argument
list as unused.  MSVC doesn't give warnings about them in C code, but
does appear to give them with C++ code.  An answer to

	http://stackoverflow.com/questions/3020584/avoid-warning-unreferenced-formal-parameter

suggests not giving the formal parameter a name in C++.

Have a macro UNUSED_PARAMETER(), which takes as an argument a variable
name, and expands to nothing in C++ and to the variable name followed by
_U_ in C, and use that for some unused parameters.  If it works, we'll
use it for all of them.

Change-Id: I76107bed037f1f0d94615adb42234c9faf83b4db
Reviewed-on: https://code.wireshark.org/review/4016
Reviewed-by: Guy Harris <guy@alum.mit.edu>
2014-09-06 20:09:16 +00:00
Evan Huus 39a14ab75f Remove now-unused functions.
Change-Id: Iecf230d493b31ecab25b33c67323987459b23bd7
Reviewed-on: https://code.wireshark.org/review/2242
Reviewed-by: Michael Mann <mmann78@netscape.net>
2014-06-16 15:19:48 +00:00
Alexis La Goutte 3170f2e418 Continue to remove $Id$ from top of file
(Using sed : sed -i '/^ \*  \$Id\$/,+1 d') (Double space between star and $Id$)

Change-Id: If9b8f345e3b6493de0b573600e60005c8b0b33c3
Reviewed-on: https://code.wireshark.org/review/877
Reviewed-by: Evan Huus <eapache@gmail.com>
2014-03-31 15:59:51 +00:00
Gilbert Ramirez 4cc694839d Fix all -fstrict-alias warnings found by gcc 4.1.2
The majority of the fixes are for calls to uat_new(). Instead of
having each caller cast its private data to (void**), we use void*
in the uat_new() API itself. Inside uat_new(), we cast the void*
to void**.

Some dissectors use val64_string arrays, so a VALS64() macro was
added for those, to avoid using VALS(), which is useful only for
value_string arrays.

packet-mq.c was changed because dissect_nt_sid() requires
a char**, not a guint**. All other callers of dissect_nt_sid() use
char*'s (and take the address of it) for their local storage. So,
this was changed to follow the other practices.

A confusion between gint and absolute_time_display_e in packet-time.c
was cleared up.

The ugliest fix is the addition of ip6_guint8_to_str(), for exactly
one caller. The caller uses one type of ip6 address byte array,
while ip6_to_str() expects another. This new function is in place
until the various address implementations can be consolidated.

Add VALS64() to the developer documentation.

Change-Id: If93ff5c6c8c7cc3c9510d7fb78fa9108e4552805
Reviewed-on: https://code.wireshark.org/review/48
Reviewed-by: Evan Huus <eapache@gmail.com>
Reviewed-by: Stig Bjørlykke <stig@bjorlykke.org>
Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
Tested-by: Alexis La Goutte <alexis.lagoutte@gmail.com>
2014-02-03 09:26:10 +00:00
Irene Rüngeler 85d84776b8 Use PT_TXTMOD_NONE for columns that should not be editable.
svn path=/trunk/; revision=53906
2013-12-10 15:33:07 +00:00
Jakub Zawadzki f91eba752b Fix some warnings: cast discards `__attribute__((const))' qualifier from pointer target type
svn path=/trunk/; revision=53875
2013-12-08 23:16:06 +00:00
Jakub Zawadzki bf0de4310b Rename struct _uat_t to epan_uat
Leave typedef (uat_t) unchanged.

svn path=/trunk/; revision=53767
2013-12-03 21:35:36 +00:00
Jakub Zawadzki cedb73c7f7 Dissectors should not use dfilter.h, don't include it.
XXX ncp2222 dissector is using dfilter_compile(), why?

svn path=/trunk/; revision=53766
2013-12-03 21:31:04 +00:00
Jakub Zawadzki ae59b09443 Add missing includes in order to remove exceptions.h from proto.h (next commit).
svn path=/trunk/; revision=53230
2013-11-10 15:59:37 +00:00
Alexis La Goutte a7c7742dc2 Fix (-W)documentation error found by Clang
../../epan/uat.h:245:23: error: empty paragraph passed to '@param' command [-Werror,-Wdocumentation]
 * @param num_items_ptr
   ~~~~~~~~~~~~~~~~~~~^
1 error generated.

svn path=/trunk/; revision=51257
2013-08-10 21:28:25 +00:00
Gerald Combs a05f55bffc Add a UAT dialog. Make UAT preferences uat_t * instead of void *.
C++-ize the UAT headers.

Add an ElidedLabel widget. Use it in the File Set, Profile, and UAT
dialogs.

Update the Qt README.

svn path=/trunk/; revision=50896
2013-07-25 23:49:47 +00:00
Anders Broman d0efafbcb1 From beroset:
remove C++ incompatibilities from UAT_VS_DEF macro and all uses

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

svn path=/trunk/; revision=48259
2013-03-12 06:40:13 +00:00
Balint Reczey 1ebdb2e521 Export libwireshark symbols using WS_DLL_PUBLIC define
Also remove old WS_VAR_IMPORT define and related Makefile magic
everywhere in the project.

svn path=/trunk/; revision=47992
2013-03-01 23:53:11 +00:00
Michael Mann fd44f9a339 Remove C++ incompatibilities in c1222 dissector.
Also addresses an implicit cast in the epan/uat.h file

Bug 8342 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=8342)

svn path=/trunk/; revision=47721
2013-02-17 22:15:16 +00:00
Guy Harris 922a57753b Constify the second argument to uat_load(), to squelch some warnings.
svn path=/trunk/; revision=47560
2013-02-08 09:06:08 +00:00
Michael Mann 86d690880f replace "unsigned" datatype with "guint". Some mpeg files needed "unsigned int" instead.
bugs 7825-7827 (https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=7825)

svn path=/trunk/; revision=46928
2013-01-04 05:22:43 +00:00
Guy Harris 8ed7a73e22 Fix a bunch of warnings.
Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
sizeof.

Cast away some implicit 64-bit-to-32-bit conversion errors due to use of
strtol() and strtoul().

Change some data types to avoid those implicit conversion warnings.

When assigning a constant to a float, make sure the constant isn't a
double, by appending "f" to the constant.

Constify a bunch of variables, parameters, and return values to
eliminate warnings due to strings being given const qualifiers.  Cast
away those warnings in some cases where an API we don't control forces
us to do so.

Enable a bunch of additional warnings by default.  Note why at least
some of the other warnings aren't enabled.

randpkt.c and text2pcap.c are used to build programs, so they don't need
to be in EXTRA_DIST.

If the user specifies --enable-warnings-as-errors, add -Werror *even if
the user specified --enable-extra-gcc-flags; assume they know what
they're doing and are willing to have the compile fail due to the extra
GCC warnings being treated as errors.

svn path=/trunk/; revision=46748
2012-12-26 05:57:06 +00:00
Guy Harris 659cf0527a UATs could be put into "categories". The categories were defined only
implicitly by the #define name and string they were defined to; not all
UATs neatly fit into any of the categories, so some of them were put
into categories that weren't obviously correct for them, and one - the
display filter macro UAT - wasn't put into any category at all (which
caused crashes when editing them, as the GUI code that handled UAT
changes from a dialog assumed the category field was non-null).

The category was, in practice, used only to decide, in the
aforementioned GUI code, whether the packet summary pane needed to be
updated or not.  It also offered no option of "don't update the packet
summary pane *and* don't redissect anything", which is what would be
appropriate for the display filter macro UAT.

Replace the category with a set of fields indicating what the UAT
affects; we currently offer "dissection", which applies to most UATs
(any UAT in libwireshark presumably affects dissection at a minimum) and
"the set of named fields that exist".  Changing any UAT that affects
dissection requires a redissection; changing any UAT that affects the
set of named fields that exist requires a redissection *and* rebuilding
the packet summary pane.

Perhaps we also need "filtering", so that if you change a display filter
macro, we re-filter, in case the display is currently filtered with a
display filter that uses a macro that changed.

svn path=/trunk/; revision=43603
2012-07-08 01:00:46 +00:00
Jakub Zawadzki bf81b42e1e Update Free Software Foundation address.
(COPYING will be updated in next commit)

svn path=/trunk/; revision=43536
2012-06-28 22:56:06 +00:00
Anders Broman 41cbf49820 Fix a typo.
svn path=/trunk/; revision=42401
2012-05-03 15:31:45 +00:00
Stig Bjørlykke 019008548b Recreate the packet list when changing UAT for header fields.
This fixes a crash when changing settings for fields used as a custom column.

svn path=/trunk/; revision=41840
2012-03-30 08:57:57 +00:00
Guy Harris 6f59700722 Fix usage of g_ascii_strdown() and g_ascii_strup() - they do *not*
modify the string in place, they return a g_mallocated modified version
of the string passed into them.

svn path=/trunk/; revision=40727
2012-01-25 23:03:33 +00:00
Jeff Morriss f5e838b602 Remove comma at the end of several enumerator lists.
svn path=/trunk/; revision=39700
2011-11-01 01:23:10 +00:00
Stig Bjørlykke c3cb0e6dd9 From Dirk via bug 6361:
Add a File/Directory Dialog as a field type for UAT preferences.

svn path=/trunk/; revision=39058
2011-09-20 10:14:58 +00:00
Stig Bjørlykke 0c1a3a8e09 Set maximum value for UAT range in fld_data, not cbdata.chk/set/tostr.
Both _set_cb and chk_range uses fld_data as max in range_convert_str().

This bug was found when the range max check from bug 4768 was fixed
in revision 34698.

svn path=/trunk/; revision=34722
2010-10-30 17:51:20 +00:00
Guy Harris 17d4d51b7d Make the third argument to a UAT copy callback a size_t (not that any of
the callbacks we have use that argument - is it really needed?).

svn path=/trunk/; revision=34694
2010-10-29 21:11:33 +00:00
Graeme Lunt 812274918a Introduce an Object Identifier field macro, together with an appropriate field
check routine.
Also, a field type which is an enumerated string value.


svn path=/trunk/; revision=33343
2010-06-28 09:30:15 +00:00
Stig Bjørlykke 2f8830b4d0 From LEGO via bug 3459:
Add a callback to UAT to be called after the table has being updated,
use it to renew the snmp_ue_cache.

svn path=/trunk/; revision=32112
2010-03-04 12:50:18 +00:00
Bill Meier 94dda5f083 Update the uat_new documentation to match the actual function.
svn path=/trunk/; revision=31898
2010-02-16 20:35:58 +00:00
Jeff Morriss 9f29cca534 s/g_strdown/g_ascii_strdown
svn path=/trunk/; revision=29882
2009-09-13 19:23:07 +00:00
Guy Harris 7979be1dfe More constification, fewer warnings.
svn path=/trunk/; revision=28094
2009-04-20 18:45:02 +00:00
Guy Harris 4ab2ca8891 Constify some items to squelch some compiler warnings in the Windows
buildbot; based on a patch from Chris Maynard, with some additional
changes to squelch GCC warnings on UN*X.

svn path=/trunk/; revision=28093
2009-04-20 18:34:06 +00:00
Guy Harris 14c88fa8a4 Clean up some P64 issues; we assume that no strings in UATs are bigger
than 2^31-1 (if they are, truncating the length to 32 bits is probably
the least of our problems).

svn path=/trunk/; revision=27735
2009-03-16 06:11:30 +00:00
Stig Bjørlykke 62f60df6b4 From Jakub Zawadzki (bug 3331):
g_free() is NULL safe, so we don't need check against it.

svn path=/trunk/; revision=27718
2009-03-13 22:06:48 +00:00
Stig Bjørlykke b4c2f2044a Don't use ep_strndup() to copy the uat protocol name, because the value
can be free'ed before we use it.  Allocate the string like we do for
other strings and copy/free the memory in the appropriate copy_cb/free_cb
functions.  This is only used in the DLT_USER table yet.

svn path=/trunk/; revision=27663
2009-03-08 22:31:28 +00:00
Guy Harris 5742ede54c Add an additional "title" attribute for UAT fields; that's what's
displayed to the user.

svn path=/trunk/; revision=27462
2009-02-16 04:10:06 +00:00
Luis Ontanon 42c3239a1a luis.ontanon@gmail.com => luis@ontanon.org
svn path=/trunk/; revision=25937
2008-08-05 21:03:46 +00:00