]> The Tcpdump Group git mirrors - tcpdump/commit
Introduce a buffer stack, and use it for ESP decryption.
authorGuy Harris <[email protected]>
Sun, 31 Mar 2019 02:26:06 +0000 (19:26 -0700)
committerGuy Harris <[email protected]>
Sun, 31 Mar 2019 02:26:06 +0000 (19:26 -0700)
commit6da51b3ec9fc858728e5ea981757d05f970958e0
tree47fbafa3ad50cb420844dae1ae53a394ae41b1d2
parent3d9ae63197107f1edce8c117b49332306e3ed8fb
Introduce a buffer stack, and use it for ESP decryption.

If a dissector has to process its input - decryption, decompression,
etc. - rather than dissect the raw input, it should push the processed
input onto the buffer stack.  As soon as the dissection is done, the
stack should be popped, to free the buffer into which the processing was
done, and restore the "pointer to packet data" and "pointer to end of
packet data" members of the netdissect_options structure, so the code
can go back to dissecting the original data.

The stack will get everything popped off it when dissection is done.

Use this mechanism in the ESP decryption code rather than scribbling on
top of the input packet data.
netdissect.c
netdissect.h
print-esp.c
print-isakmp.c
print.c