]> The Tcpdump Group git mirrors - tcpdump/commitdiff
Add ND_TTEST_SIZE() and ND_TCHECK_SIZE() macros
authorFrancois-Xavier Le Bail <[email protected]>
Tue, 2 Jan 2018 14:50:24 +0000 (15:50 +0100)
committerFrancois-Xavier Le Bail <[email protected]>
Wed, 3 Jan 2018 20:06:54 +0000 (21:06 +0100)
To replace in next steps:
ND_TTEST(var) -> ND_TTEST_SIZE(p)
ND_TCHECK(var) -> ND_TCHECK_SIZE(p)

Moreover:
Add a comment

netdissect.h

index d23bdbfc266a61de7a2349aa009b0ebec9f5ba2f..c1e4eaee0bc6fe5204d1a835010347aa6a83bfb7 100644 (file)
@@ -331,14 +331,21 @@ struct netdissect_options {
 /* True if "var" was captured */
 #define ND_TTEST(var) ND_TTEST2(var, sizeof(var))
 
+/* True if "*(p)" was captured */
+#define ND_TTEST_SIZE(p) ND_TTEST_LEN(p, sizeof(*(p)))
+
 /* Bail if "l" bytes of "var" were not captured */
 #define ND_TCHECK2(var, l) if (!ND_TTEST2(var, l)) goto trunc
 
+/* Bail out if "l" bytes from "p" were not captured */
 #define ND_TCHECK_LEN(p, l) if (!ND_TTEST_LEN(p, l)) goto trunc
 
 /* Bail if "var" was not captured */
 #define ND_TCHECK(var) ND_TCHECK2(var, sizeof(var))
 
+/* Bail out if "*(p)" was not captured */
+#define ND_TCHECK_SIZE(p) ND_TCHECK_LEN(p, sizeof(*(p)))
+
 #define ND_PRINT(STUFF) (ndo->ndo_printf)STUFF
 #define ND_DEFAULTPRINT(ap, length) (*ndo->ndo_default_print)(ndo, ap, length)