diff options
author | João Valverde <j@v6e.pt> | 2022-10-02 01:55:51 +0100 |
---|---|---|
committer | João Valverde <j@v6e.pt> | 2022-10-07 10:28:47 +0100 |
commit | 3c99478cef3ad009aa22076d172ac528ac4e2d58 (patch) | |
tree | 0d300dbdc0ff712452c8092565305ebcd336784c /wiretap/introspection.h | |
parent | 9faaf0ecff25e8d6b51da4f90eba07a176cbef60 (diff) |
wiretap: Add enum generation
Diffstat (limited to 'wiretap/introspection.h')
-rw-r--r-- | wiretap/introspection.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/wiretap/introspection.h b/wiretap/introspection.h new file mode 100644 index 0000000000..c12bbcf59d --- /dev/null +++ b/wiretap/introspection.h @@ -0,0 +1,36 @@ +/** @file + * Copyright 2021, João Valverde <j@v6e.pt> + * + * Wireshark - Network traffic analyzer + * By Gerald Combs <gerald@wireshark.org> + * Copyright 1998 Gerald Combs + * + * SPDX-License-Identifier: GPL-2.0-or-later + */ + +#ifndef _WTAP_INTROSPECTION_H_ +#define _WTAP_INTROSPECTION_H_ + +#include <stddef.h> +#include <ws_symbol_export.h> +#include <wsutil/introspection.h> + +/** Returns an array of ws_enum_t elements. The array is sorted and + * ends with {NULL, 0}. + * + * It can be used by language bindings to the Wireshark API to obtain + * the value of some magic constants. The array can be binary searched, + * imported to a hash table, serialized, etc. + */ +WS_DLL_PUBLIC +const ws_enum_t *wtap_inspect_enums(void); + +/** Returns size of enums array not including null terminator. */ +WS_DLL_PUBLIC +size_t wtap_inspect_enums_count(void); + +/** Performs a binary search for the magic constant "needle". */ +WS_DLL_PUBLIC +const ws_enum_t *wtap_inspect_enums_bsearch(const char *needle); + +#endif |