Commit graph

70 commits

Author SHA1 Message Date
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
Jeff Morriss
c1736aec4e (Temporary?) fix to get the Windows buildbot going again: remove constness from a couple of variables.
svn path=/trunk/; revision=25935
2008-08-05 20:38:22 +00:00
Luis Ontanon
10aa072565 Have some UAT helper functions copying the passed buffer before
freeing the contained buffer ( The client might have passed the
contained buffer to avoid read-after-free )


svn path=/trunk/; revision=25928
2008-08-05 11:16:24 +00:00
Stig Bjørlykke
fdc980e79d Added an option to uat_new() to set if configuration shall be saved in the
selected profile.

Don't save SMI Paths and SMI Modules in the profiles because reloading
currently doesn't work (bug 2309).

svn path=/trunk/; revision=24580
2008-03-06 22:13:24 +00:00
Gerald Combs
6537c76fb6 Extend the UAT and preferences code so that you can use the "-o" flag
to override UAT entries from the command line, e.g.

  -o "uat:user_dlts:\"User 0 (DLT=147)\",\"http\",\"0\",\"\",\"0\",\"\""
  
Fix up white space.

svn path=/trunk/; revision=24338
2008-02-15 22:36:24 +00:00
Stig Bjørlykke
1efb7e3627 Add Luis' uat_get_table_by_name() to fetch SMI uat tables.
svn path=/trunk/; revision=24229
2008-01-30 22:50:55 +00:00
Stig Bjørlykke
1621224a86 Free allocated data in prefs_reset, removed need for uat_reload_all and
made some cleanups in profile_dlg.

svn path=/trunk/; revision=24136
2008-01-19 01:18:35 +00:00