summaryrefslogtreecommitdiffstats
path: root/wiretap/introspection.h
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-10 20:34:10 +0000
commite4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc (patch)
tree68cb5ef9081156392f1dd62a00c6ccc1451b93df /wiretap/introspection.h
parentInitial commit. (diff)
downloadwireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.tar.xz
wireshark-e4ba6dbc3f1e76890b22773807ea37fe8fa2b1bc.zip
Adding upstream version 4.2.2.upstream/4.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'wiretap/introspection.h')
-rw-r--r--wiretap/introspection.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/wiretap/introspection.h b/wiretap/introspection.h
new file mode 100644
index 00000000..c12bbcf5
--- /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