aboutsummaryrefslogtreecommitdiffstats
path: root/cmakeconfig.h.in
diff options
context:
space:
mode:
Diffstat (limited to 'cmakeconfig.h.in')
-rw-r--r--cmakeconfig.h.in149
1 files changed, 128 insertions, 21 deletions
diff --git a/cmakeconfig.h.in b/cmakeconfig.h.in
index 35b2cad39d..38cd494b4f 100644
--- a/cmakeconfig.h.in
+++ b/cmakeconfig.h.in
@@ -10,15 +10,19 @@
#define VERSION_EXTRA "$ENV{WIRESHARK_VERSION_EXTRA}"
-/* Version number of package */
+/* Version number of Wireshark and associated utilities */
#define VERSION "${PROJECT_VERSION}${VERSION_EXTRA}"
#define VERSION_MAJOR ${PROJECT_MAJOR_VERSION}
#define VERSION_MINOR ${PROJECT_MINOR_VERSION}
#define VERSION_MICRO ${PROJECT_PATCH_VERSION}
-#define PLUGIN_PATH_ID "${PLUGIN_PATH_ID}"
+/* Version number of Logray and associated utilities */
+#define LOG_VERSION "${LOG_PROJECT_VERSION}${VERSION_EXTRA}"
+
#define VERSION_FLAVOR "${VERSION_FLAVOR}"
+#define SHARED_MODULE_SUFFIX "${CMAKE_SHARED_MODULE_SUFFIX}"
+
/* Build wsutil with SIMD optimization */
#cmakedefine HAVE_SSE4_2 1
@@ -31,6 +35,9 @@
/* Link Wireshark libraries statically */
#cmakedefine ENABLE_STATIC 1
+/* Enable AddressSanitizer (and LeakSanitizer on clang/gcc) */
+#cmakedefine ENABLE_ASAN 1
+
/* Enable AirPcap */
#cmakedefine HAVE_AIRPCAP 1
@@ -40,6 +47,21 @@
/* Define to 1 if you have the `clock_gettime` function. */
#cmakedefine HAVE_CLOCK_GETTIME 1
+/* Define to 1 if you have the `timespec_get` function. */
+#cmakedefine HAVE_TIMESPEC_GET 1
+
+/* Define to 1 if you have the `localtime_r` function. */
+#cmakedefine HAVE_LOCALTIME_R 1
+
+/* Define to 1 if you have the `gmtime_r` function. */
+#cmakedefine HAVE_GMTIME_R 1
+
+/* Define to 1 if you have the `timegm` function. */
+#cmakedefine HAVE_TIMEGM 1
+
+/* Define to 1 if you have the `tzset` function. */
+#cmakedefine HAVE_TZSET 1
+
/* Define to use the MaxMind DB library */
#cmakedefine HAVE_MAXMINDDB 1
@@ -61,9 +83,6 @@
/* Define if you have the 'dlget' function. */
#cmakedefine HAVE_DLGET 1
-/* Define if you have the 'getexecname' function. */
-#cmakedefine HAVE_GETEXECNAME 1
-
/* Define to 1 if you have the <grp.h> header file. */
#cmakedefine HAVE_GRP_H 1
@@ -94,6 +113,9 @@
/* Define to use nghttp2 */
#cmakedefine HAVE_NGHTTP2 1
+/* Define to use nghttp3 */
+#cmakedefine HAVE_NGHTTP3 1
+
/* Define to use the libcap library */
#cmakedefine HAVE_LIBCAP 1
@@ -157,6 +179,9 @@
/* Define to use Lua */
#cmakedefine HAVE_LUA 1
+/* Define to 1 if we have Lua with Unicode for Windows patches. */
+#cmakedefine HAVE_LUA_UNICODE 1
+
/* Define to use MIT kerberos */
#cmakedefine HAVE_MIT_KERBEROS 1
@@ -211,6 +236,12 @@
/* Define to 1 if you have the `pcap_set_tstamp_type' function. */
#cmakedefine HAVE_PCAP_SET_TSTAMP_TYPE 1
+/* Define to 1 if you have the `PCAP_ERROR_PROMISC_PERM_DENIED' symbol. */
+#cmakedefine HAVE_PCAP_ERROR_PROMISC_PERM_DENIED 1
+
+/* Define to 1 if you have the `PCAP_WARNING_TSTAMP_TYPE_NOTSUP' symbol. */
+#cmakedefine HAVE_PCAP_WARNING_TSTAMP_TYPE_NOTSUP 1
+
/* Define to 1 if you have the <pwd.h> header file. */
#cmakedefine HAVE_PWD_H 1
@@ -223,15 +254,15 @@
/* Define to 1 if you have the bcg729 library. */
#cmakedefine HAVE_BCG729 1
+/* Define to 1 if you have the opencore-amrnb library. */
+#cmakedefine HAVE_AMRNB 1
+
/* Define to 1 if you have the ilbc library. */
#cmakedefine HAVE_ILBC 1
/* Define to 1 if you have the opus library. */
#cmakedefine HAVE_OPUS 1
-/* Define to 1 if you have the speexdsp library. */
-#cmakedefine HAVE_SPEEXDSP 1
-
/* Define to 1 if you have the lixbml2 library. */
#cmakedefine HAVE_LIBXML2 1
@@ -247,6 +278,18 @@
/* Define if you have the 'strptime' function. */
#cmakedefine HAVE_STRPTIME 1
+/* Define if you have the 'memmem' function. */
+#cmakedefine HAVE_MEMMEM 1
+
+/* Define if you have the 'memrchr' function. */
+#cmakedefine HAVE_MEMRCHR 1
+
+/* Define if you have the 'strerrorname_np' function. */
+#cmakedefine HAVE_STRERRORNAME_NP 1
+
+/* Define if you have the 'vasprintf' function. */
+#cmakedefine HAVE_VASPRINTF 1
+
/* Define to 1 if `st_birthtime' is a member of `struct stat'. */
#cmakedefine HAVE_STRUCT_STAT_ST_BIRTHTIME 1
@@ -268,6 +311,9 @@
/* Define to 1 if you have the <sys/wait.h> header file. */
#cmakedefine HAVE_SYS_WAIT_H 1
+/* Define if tm_gmtoff field exists in struct tm */
+#cmakedefine HAVE_STRUCT_TM_TM_GMTOFF 1
+
/* Define if tm_zone field exists in struct tm */
#cmakedefine HAVE_STRUCT_TM_TM_ZONE 1
@@ -278,10 +324,7 @@
#cmakedefine HAVE_UNISTD_H 1
/* Define if we have QtMultimedia */
-#define QT_MULTIMEDIA_LIB 1
-
-/* Define if we have QtMacExtras */
-#cmakedefine QT_MACEXTRAS_LIB 1
+#cmakedefine QT_MULTIMEDIA_LIB 1
/* Build androiddump with libpcap instead of wireshark stuff */
#cmakedefine ANDROIDDUMP_USE_LIBPCAP 1
@@ -291,21 +334,19 @@
/* Note: not use in the code */
#cmakedefine YYTEXT_POINTER
+/* Define to 1 if the 'ssize_t' type exists. */
+#cmakedefine HAVE_SSIZE_T 1
+
+/* Define to 1 if we are using the msys2 environment to build. */
+#cmakedefine HAVE_MSYSTEM 1
+
#if defined(_MSC_VER)
-# if !defined(QT_VERSION) || !defined(_SSIZE_T_DEFINED)
- typedef int ssize_t;
-# endif
# define strncasecmp strnicmp
# define popen _popen
# define pclose _pclose
#endif
#if defined(_WIN32)
- /* WpdPack/INclude/pcap/pcap.h checks for "#if defined(WIN32)" */
-# ifndef WIN32
-# define WIN32 1
-# endif
-
/*
* Flex (v 2.5.35) uses this symbol to "exclude" unistd.h
*/
@@ -314,9 +355,75 @@
# ifndef __STDC__
# define __STDC__ 0
# endif
+
+/*
+ * Make sure everyone is using the same API and that it's sufficient
+ * for our needs.
+ * This should match the following:
+ * - The <compatibility><application> section in resources\wireshark.exe.manifest.in
+ * - The WinVer parts of packaging\nsis\wireshark.nsi
+ * - The VersionNT parts of packaging\wix\Prerequisites.wxi
+ */
+# ifndef NTDDI_VERSION
+# define NTDDI_VERSION NTDDI_WIN10
+# endif
+
+# ifndef _WIN32_WINNT
+# define _WIN32_WINNT _WIN32_WINNT_WIN10
+# endif
+#endif
+
+#define PCRE2_CODE_UNIT_WIDTH 8
+
+/*
+ * If HAVE_PCAP_REMOTE is defined, it forces the WinPcap header files to
+ * define things required for remote capture, by defining HAVE_REMOTE.
+ *
+ * With all versions of the WinPcap SDK, if:
+ *
+ * 1) you are building with any current WinPcap SDK;
+ * 2) you do not define HAVE_REMOTE before including pcap.h (or
+ * pcap/pcap.h);
+ * 3) you define a struct pcap_stat and pass it to a call to
+ * pcap_stats();
+ * 4) the system you're running on has WinPcap, rather than Npcap,
+ * installed;
+ *
+ * whatever is in memory after the struct pcap_stat may get overwritten,
+ * with unpredictable results, because the pcap_stats() implementation for
+ * WinPcap will assume that the structure has the additional members that
+ * are added if and only if HAVE_REMOTE is defined, and will fill them in,
+ * even if they're not there.
+ *
+ * Yes, this is q WinPcap bug; if your project has a public header file
+ * that checks or otherwise uses a #define that's defined by your project's
+ * configuration process, and don't ensure that it's always defined
+ * appropriately when that header file is included, before its first use,
+ * you have made a mistake.
+ *
+ * In libpcap 1.7.0 and later, the pcap_stats() implementation for WinPcap
+ * will not fill those fields in; however, no WinPcap implementation was
+ * based on that recent a libpcap release, so they all have the bug.
+ *
+ * Npcap was originally based on libpcap 1.8.0, and later releases are
+ * based on later releases of libpcap, so they will not overwrite memory
+ * past the end of the structure.
+ *
+ * The header file bug is fixed in libpcap 1.9.0 or later - the fields
+ * are present on Windows, regardless of whether HAVE_REMOTE is defined
+ * or not when the header is included (and are not present on UN*X), so
+ * if you build with an SDK with libpcap 1.9.0 or later headers, you
+ * do not need to define HAVE_REMOTE before including pcap.h (including it
+ * will make no difference).
+ *
+ * No version of the WinPcap SDK provided libpcap 1.9.0-or-later headers.
+ * The Npcap SDK, as of SDK version 1.04, provides them, so this is
+ * only necessary for building with the WinPcap SDK.
+ */
+#ifdef HAVE_PCAP_REMOTE
+#define HAVE_REMOTE
#endif
-#include <ws_diag_control.h>
#include <ws_log_defs.h>
#endif /* __CONFIG_H__ */