]> The Tcpdump Group git mirrors - tcpdump/commitdiff
Use C99 macros to define 64-bit constants and maximum 64-bit values.
authorGuy Harris <[email protected]>
Sat, 7 Dec 2024 23:21:41 +0000 (15:21 -0800)
committerGuy Harris <[email protected]>
Sun, 8 Dec 2024 19:20:35 +0000 (11:20 -0800)
We require C99 support, so don't roll our own versions.

extract.h
netdissect-stdinc.h
ntp.c
tcpdump.c

index 7ec40e6372fab42dcd78151d0487f3633b33a518..5fb48d4fcea6cdd2b12e5c4fd2f5c3f97c0e4afd 100644 (file)
--- a/extract.h
+++ b/extract.h
@@ -414,7 +414,7 @@ EXTRACT_IPV4_TO_NETWORK_ORDER(const void *p)
                     ((uint64_t)(*((const uint8_t *)(p) + 2)) << 16) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 3)) << 8) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 4)) << 0))) : \
-         ((int64_t)(INT64_T_CONSTANT(0xFFFFFF0000000000U) | \
+         ((int64_t)(UINT64_C(0xFFFFFF0000000000) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 0)) << 32) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 1)) << 24) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 2)) << 16) | \
@@ -437,7 +437,7 @@ EXTRACT_IPV4_TO_NETWORK_ORDER(const void *p)
                      ((uint64_t)(*((const uint8_t *)(p) + 3)) << 16) | \
                      ((uint64_t)(*((const uint8_t *)(p) + 4)) << 8) | \
                      ((uint64_t)(*((const uint8_t *)(p) + 5)) << 0))) : \
-         ((int64_t)(INT64_T_CONSTANT(0xFFFFFFFF00000000U) | \
+         ((int64_t)(UINT64_C(0xFFFFFFFF00000000) | \
                      ((uint64_t)(*((const uint8_t *)(p) + 0)) << 40) | \
                      ((uint64_t)(*((const uint8_t *)(p) + 1)) << 32) | \
                      ((uint64_t)(*((const uint8_t *)(p) + 2)) << 24) | \
@@ -463,7 +463,7 @@ EXTRACT_IPV4_TO_NETWORK_ORDER(const void *p)
                     ((uint64_t)(*((const uint8_t *)(p) + 4)) << 16) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 5)) << 8) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 6)) << 0))) : \
-           ((int64_t)(INT64_T_CONSTANT(0xFFFFFFFFFF000000U) | \
+           ((int64_t)(UINT64_C(0xFFFFFFFFFF000000) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 0)) << 48) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 1)) << 40) | \
                     ((uint64_t)(*((const uint8_t *)(p) + 2)) << 32) | \
index adb0b4cbc5f859f421595c21716388b1446d881e..15c3e284b82239c19174f8da98f6400e3c26491c 100644 (file)
    * strtoint64_t().
    */
   #define strtoint64_t strtoll
-
-  /*
-   * And we have LL as a suffix for constants, so use that.
-   */
-  #define INT64_T_CONSTANT(constant)   (constant##LL)
 #else
   /*
    * Non-Microsoft compiler.
    * XXX - should we use strtoll or should we use _strtoi64()?
    */
   #define strtoint64_t         strtoll
-
-  /*
-   * Assume LL works.
-   */
-  #define INT64_T_CONSTANT(constant)   (constant##LL)
 #endif
 
 #ifdef _MSC_VER
@@ -246,11 +236,6 @@ typedef char *caddr_t;
  * Assume all UN*Xes have strtoll(), and use it for strtoint64_t().
  */
 #define strtoint64_t   strtoll
-
-/*
- * Assume LL works.
- */
-#define INT64_T_CONSTANT(constant)     (constant##LL)
 #endif /* _WIN32 */
 
 /*
diff --git a/ntp.c b/ntp.c
index 6c4b7f32fde787c5e31129d4a43e5722702fc766..c9d60fae3a9732b14a1de2af080e726614843762 100644 (file)
--- a/ntp.c
+++ b/ntp.c
@@ -26,7 +26,7 @@
 
 #include "extract.h"
 
-#define        JAN_1970        INT64_T_CONSTANT(2208988800)    /* 1970 - 1900 in seconds */
+#define        JAN_1970        INT64_C(2208988800)     /* 1970 - 1900 in seconds */
 
 void
 p_ntp_time_fmt(netdissect_options *ndo, const char *fmt,
index 9c7cb0190d1dc6ed93868870da77d5d7f40fb4af..db7dee71dee5b45ac157a030956ea463a6f0961c 100644 (file)
--- a/tcpdump.c
+++ b/tcpdump.c
@@ -1728,7 +1728,7 @@ main(int argc, char **argv)
                         * Will multiplying it by multiplier overflow?
                         */
 #ifdef HAVE_PCAP_DUMP_FTELL64
-                       if (Cflag > INT64_T_CONSTANT(0x7fffffffffffffff) / Cflagmult)
+                       if (Cflag > INT64_MAX / Cflagmult)
 #else
                        if (Cflag > LONG_MAX / Cflagmult)
 #endif