diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 17:13:01 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 17:13:01 +0000 |
commit | 7adcb5b605cc1328a3084c334f4697ec9771936c (patch) | |
tree | 03e681bfda053978ba896745828e09cb056ad156 /print-http.c | |
parent | Initial commit. (diff) | |
download | tcpdump-upstream/4.99.4.tar.xz tcpdump-upstream/4.99.4.zip |
Adding upstream version 4.99.4.upstream/4.99.4
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'print-http.c')
-rw-r--r-- | print-http.c | 74 |
1 files changed, 74 insertions, 0 deletions
diff --git a/print-http.c b/print-http.c new file mode 100644 index 0000000..6845d0d --- /dev/null +++ b/print-http.c @@ -0,0 +1,74 @@ +/* + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that: (1) source code + * distributions retain the above copyright notice and this paragraph + * in its entirety, and (2) distributions including binary code include + * the above copyright notice and this paragraph in its entirety in + * the documentation or other materials provided with the distribution. + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND + * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT + * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE. + */ + +/* \summary: Hypertext Transfer Protocol (HTTP) printer */ + +#ifdef HAVE_CONFIG_H +#include <config.h> +#endif + +#include "netdissect-stdinc.h" + +#include "netdissect.h" + +/* + * Includes WebDAV requests. + */ +static const char *httpcmds[] = { + "GET", + "PUT", + "COPY", + "HEAD", + "LOCK", + "MOVE", + "POLL", + "POST", + "BCOPY", + "BMOVE", + "MKCOL", + "TRACE", + "LABEL", + "MERGE", + "DELETE", + "SEARCH", + "UNLOCK", + "REPORT", + "UPDATE", + "NOTIFY", + "BDELETE", + "CONNECT", + "OPTIONS", + "CHECKIN", + "PROPFIND", + "CHECKOUT", + "CCM_POST", + "SUBSCRIBE", + "PROPPATCH", + "BPROPFIND", + "BPROPPATCH", + "UNCHECKOUT", + "MKACTIVITY", + "MKWORKSPACE", + "UNSUBSCRIBE", + "RPC_CONNECT", + "VERSION-CONTROL", + "BASELINE-CONTROL", + NULL +}; + +void +http_print(netdissect_options *ndo, const u_char *pptr, u_int len) +{ + ndo->ndo_protocol = "http"; + txtproto_print(ndo, pptr, len, httpcmds, RESP_CODE_SECOND_TOKEN); +} |