X-Git-Url: https://git.tcpdump.org/tcpdump/blobdiff_plain/ff01ae8e5126f4d30eb582add8d64dbe2228cc5f..HEAD:/print-macsec.c diff --git a/print-macsec.c b/print-macsec.c index 2c955c5a..5fca3922 100644 --- a/print-macsec.c +++ b/print-macsec.c @@ -21,15 +21,12 @@ /* \summary: MACsec printer */ -#ifdef HAVE_CONFIG_H #include -#endif -#include +#include "netdissect-stdinc.h" #include "netdissect.h" #include "addrtoname.h" -#include "ethertype.h" #include "extract.h" #define MACSEC_DEFAULT_ICV_LEN 16 @@ -219,6 +216,12 @@ macsec_print(netdissect_options *ndo, const u_char **bp, } *lengthp -= MACSEC_DEFAULT_ICV_LEN; *caplenp -= MACSEC_DEFAULT_ICV_LEN; + /* + * Update the snapend thus the ICV field is not in the payload for + * the caller. + * The ICV (Integrity Check Value) is at the end of the frame, after + * the secure data. + */ ndo->ndo_snapend -= MACSEC_DEFAULT_ICV_LEN; /*