From ab797734ddebd50f40deae437f27392ca4651c92 Mon Sep 17 00:00:00 2001 From: Guy Harris Date: Sun, 26 Jun 2005 19:56:52 +0000 Subject: Get rid of the private "my_match_strval()" routine in many dissectors; add a "match_strval_idx()" routine that does the same thing, and have "match_strval()" call it. Make those routines, and "val_to_str()", return a "const" pointer. Update dissectors as necessary to squelch compiler warnings produced by that. Use "val_to_str()" rather than using "match_strval()" and then, if the result is null, substituting a specific string. Clean up some other "match_strval()"/"val_to_str()" usages. Add a null pointer check in the NDPS dissector's "attribute_value()" routine, as it's not clear that "global_attribute_name" won't be null at that point. Make some global variables in the AFS4INT dissector local. Make some routines not used outside the module they're in static. Make some tables "static const". Clean up white space. Fix Gerald's address in some files. svn path=/trunk/; revision=14786 --- epan/value_string.h | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'epan/value_string.h') diff --git a/epan/value_string.h b/epan/value_string.h index d6e7ec533f..5bb264a492 100644 --- a/epan/value_string.h +++ b/epan/value_string.h @@ -4,10 +4,9 @@ * $Id$ * * Ethereal - Network traffic analyzer - * By Gerald Combs + * By Gerald Combs * Copyright 1998 Gerald Combs * - * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version 2 @@ -28,7 +27,7 @@ #include -/* Struct for the match_strval function */ +/* Struct for the val_to_str, match_strval_idx, and match_strval functions */ typedef struct _value_string { guint32 value; @@ -39,13 +38,18 @@ typedef struct _value_string { /* #define VS_END { 0, NULL } */ /* Tries to match val against each element in the value_string array vs. - Returns the associated string ptr on a match, or NULL on failure. */ -extern gchar* match_strval(guint32 val, const value_string *vs); + Returns the associated string ptr, and sets "*idx" to the index in + that table, on a match, and returns NULL, and sets "*idx" to -1, + on failure. */ +extern const gchar* match_strval_idx(guint32 val, const value_string *vs, gint *idx); + +/* Like match_strval_idx(), but doesn't return the index. */ +extern const gchar* match_strval(guint32 val, const value_string *vs); /* Tries to match val against each element in the value_string array vs. Returns the associated string ptr on a match. Formats val with fmt, and returns the resulting string, on failure. */ -extern gchar* val_to_str(guint32 val, const value_string *vs, const char *fmt); +extern const gchar* val_to_str(guint32 val, const value_string *vs, const char *fmt); /* Generate a string describing an enumerated bitfield (an N-bit field with various specific values having particular names). */ -- cgit v1.2.1