3 * Declarations of routines to report version information for Wireshark
6 * Wireshark - Network traffic analyzer
7 * By Gerald Combs <gerald@wireshark.org>
8 * Copyright 1998 Gerald Combs
10 * SPDX-License-Identifier: GPL-2.0-or-later
13 #ifndef __WS_VERSION_INFO_H__
14 #define __WS_VERSION_INFO_H__
17 #include <wsutil/feature_list.h>
21 #endif /* __cplusplus */
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
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.
34 * "gather_compile" is called (if non-null) to add any additional build-time
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.
43 void ws_init_version_info(const char *appname
,
44 gather_feature_func gather_compile
,
45 gather_feature_func gather_runtime
);
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.
53 const char *get_appname_and_version(void);
57 gather_pcre2_compile_info(feature_list l
);
61 gather_zlib_compile_info(feature_list l
);
65 gather_zlib_ng_compile_info(feature_list l
);
68 * Get various library compile-time versions, put them in a GString,
69 * and return the GString.
71 * "gather_compile" is called (if non-null) to add any additional build-time
75 GString
*get_compiled_version_info(gather_feature_func gather_compile
);
79 gather_pcre2_runtime_info(feature_list l
);
83 gather_zlib_runtime_info(feature_list l
);
86 * Get various library run-time versions, and the OS version, put them in
87 * a GString, and return the GString.
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.
95 GString
*get_runtime_version_info(gather_feature_func gather_runtime
);
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.
103 const char *get_ws_vcs_version_info(void);
106 * Return a version number string for Stratoshark, including, for builds
107 * from a tree checked out from Stratoshark's version control system,
108 * something identifying what version was checked out.
111 const char *get_ss_vcs_version_info(void);
114 * Shorter version of get_ws_vcs_version_info().
117 const char *get_ws_vcs_version_info_short(void);
120 * Return version number as integers.
123 void get_ws_version_number(int *major
, int *minor
, int *micro
);
126 * Show the program name and version number information on the standard
127 * output; this is used for command-line "show the version" options.
130 void show_version(void);
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.
138 void show_help_header(const char *description
);
141 const char *get_copyright_info(void);
144 const char *get_license_info(void);
147 const char *get_license_info_short(void);
151 #endif /* __cplusplus */
153 #endif /* __WS_VERSION_INFO_H__ */