Wireshark  4.3.0
The Wireshark network protocol analyzer
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
20 extern "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  */
42 WS_DLL_PUBLIC
43 void 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  */
52 WS_DLL_PUBLIC
53 const char *get_appname_and_version(void);
54 
55 WS_DLL_PUBLIC
56 void
57 gather_pcre2_compile_info(feature_list l);
58 
59 WS_DLL_PUBLIC
60 void
61 gather_zlib_compile_info(feature_list l);
62 
63 WS_DLL_PUBLIC
64 void
65 gather_zlib_ng_compile_info(feature_list l);
66 
67 /*
68  * Get various library compile-time versions, put them in a GString,
69  * and return the GString.
70  *
71  * "gather_compile" is called (if non-null) to add any additional build-time
72  * information.
73  */
74 WS_DLL_PUBLIC
75 GString *get_compiled_version_info(gather_feature_func gather_compile);
76 
77 WS_DLL_PUBLIC
78 void
79 gather_pcre2_runtime_info(feature_list l);
80 
81 WS_DLL_PUBLIC
82 void
83 gather_zlib_runtime_info(feature_list l);
84 
85 /*
86  * Get various library run-time versions, and the OS version, put them in
87  * a GString, and return the GString.
88  *
89  * "gather_runtime" is called (if non-null) to add any additional
90  * run-time information; this is required in order to, for example,
91  * put the libcap information into the string, as we currently
92  * don't use libcap in TShark.
93  */
94 WS_DLL_PUBLIC
95 GString *get_runtime_version_info(gather_feature_func gather_runtime);
96 
97 /*
98  * Return a version number string for Wireshark, including, for builds
99  * from a tree checked out from Wireshark's version control system,
100  * something identifying what version was checked out.
101  */
102 WS_DLL_PUBLIC
103 const char *get_ws_vcs_version_info(void);
104 
105 /*
106  * Return a version number string for Logray, including, for builds
107  * from a tree checked out from Logray's version control system,
108  * something identifying what version was checked out.
109  */
110 WS_DLL_PUBLIC
111 const char *get_lr_vcs_version_info(void);
112 
113 /*
114  * Shorter version of get_ws_vcs_version_info().
115  */
116 WS_DLL_PUBLIC
117 const char *get_ws_vcs_version_info_short(void);
118 
119 /*
120  * Return version number as integers.
121  */
122 WS_DLL_PUBLIC
123 void get_ws_version_number(int *major, int *minor, int *micro);
124 
125 /*
126  * Show the program name and version number information on the standard
127  * output; this is used for command-line "show the version" options.
128  */
129 WS_DLL_PUBLIC
130 void show_version(void);
131 
132 /*
133  * Show the program name and version number information, a supplied
134  * description string, and a "See {URL} for more information" message.
135  * This is used for command-line "help" options.
136  */
137 WS_DLL_PUBLIC
138 void show_help_header(const char *description);
139 
140 WS_DLL_PUBLIC
141 const char *get_copyright_info(void);
142 
143 WS_DLL_PUBLIC
144 const char *get_license_info(void);
145 
146 WS_DLL_PUBLIC
147 const char *get_license_info_short(void);
148 
149 #ifdef __cplusplus
150 }
151 #endif /* __cplusplus */
152 
153 #endif /* __WS_VERSION_INFO_H__ */