Wireshark 4.5.0
The Wireshark network protocol analyzer
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
version_info.h
Go to the documentation of this file.
1
13#ifndef __WS_VERSION_INFO_H__
14#define __WS_VERSION_INFO_H__
15
16#include <glib.h>
17#include <wsutil/feature_list.h>
18
19#ifdef __cplusplus
20extern "C" {
21#endif /* __cplusplus */
22
23/*
24 * Initialize information about the program for various purposes, including
25 * reporting the version and build information for the program, putting
26 * that information into crash dumps if possible, and giving the program
27 * name and version information into capture files written by the program
28 * if possible.
29 *
30 * "appname" is a string that appears at the beginning of the information;
31 * it should be the application name. "(Wireshark)" will be added if
32 * the program isn't Wireshark.
33 *
34 * "gather_compile" is called (if non-null) to add any additional build-time
35 * information.
36 *
37 * "gather_runtime" is called (if non-null) to add any additional
38 * run-time information; this is required in order to, for example,
39 * put the libcap information into the string, as we currently
40 * don't use libcap in TShark.
41 */
42WS_DLL_PUBLIC
43void ws_init_version_info(const char *appname,
44 gather_feature_func gather_compile,
45 gather_feature_func gather_runtime);
46
47/*
48 * Get a string giving the application name, as provided to
49 * ws_init_version_info(), followed by a string giving the
50 * application version.
51 */
52WS_DLL_PUBLIC
53const char *get_appname_and_version(void);
54
55WS_DLL_PUBLIC
56void
57gather_pcre2_compile_info(feature_list l);
58
59WS_DLL_PUBLIC
60void
61gather_xxhash_compile_info(feature_list l);
62
63WS_DLL_PUBLIC
64void
65gather_zlib_compile_info(feature_list l);
66
67WS_DLL_PUBLIC
68void
69gather_zlib_ng_compile_info(feature_list l);
70
71/*
72 * Get various library compile-time versions, put them in a GString,
73 * and return the GString.
74 *
75 * "gather_compile" is called (if non-null) to add any additional build-time
76 * information.
77 */
78WS_DLL_PUBLIC
79GString *get_compiled_version_info(gather_feature_func gather_compile);
80
81WS_DLL_PUBLIC
82void
83gather_pcre2_runtime_info(feature_list l);
84
85WS_DLL_PUBLIC
86void
87gather_xxhash_runtime_info(feature_list l);
88
89WS_DLL_PUBLIC
90void
91gather_zlib_runtime_info(feature_list l);
92
93/*
94 * Get various library run-time versions, and the OS version, put them in
95 * a GString, and return the GString.
96 *
97 * "gather_runtime" is called (if non-null) to add any additional
98 * run-time information; this is required in order to, for example,
99 * put the libcap information into the string, as we currently
100 * don't use libcap in TShark.
101 */
102WS_DLL_PUBLIC
103GString *get_runtime_version_info(gather_feature_func gather_runtime);
104
105/*
106 * Return a version number string for Wireshark, including, for builds
107 * from a tree checked out from Wireshark's version control system,
108 * something identifying what version was checked out.
109 */
110WS_DLL_PUBLIC
111const char *get_ws_vcs_version_info(void);
112
113/*
114 * Return a version number string for Stratoshark, including, for builds
115 * from a tree checked out from Stratoshark's version control system,
116 * something identifying what version was checked out.
117 */
118WS_DLL_PUBLIC
119const char *get_ss_vcs_version_info(void);
120
121/*
122 * Shorter version of get_ws_vcs_version_info().
123 */
124WS_DLL_PUBLIC
125const char *get_ws_vcs_version_info_short(void);
126
127/*
128 * Return version number as integers.
129 */
130WS_DLL_PUBLIC
131void get_ws_version_number(int *major, int *minor, int *micro);
132
133/*
134 * Show the program name and version number information on the standard
135 * output; this is used for command-line "show the version" options.
136 */
137WS_DLL_PUBLIC
138void show_version(void);
139
140/*
141 * Show the program name and version number information, a supplied
142 * description string, and a "See {URL} for more information" message.
143 * This is used for command-line "help" options.
144 */
145WS_DLL_PUBLIC
146void show_help_header(const char *description);
147
148WS_DLL_PUBLIC
149const char *get_copyright_info(void);
150
151WS_DLL_PUBLIC
152const char *get_license_info(void);
153
154WS_DLL_PUBLIC
155const char *get_license_info_short(void);
156
157#ifdef __cplusplus
158}
159#endif /* __cplusplus */
160
161#endif /* __WS_VERSION_INFO_H__ */