Home | History | Annotate | Download | only in tcpdump
      1 /*
      2  * Redistribution and use in source and binary forms, with or without
      3  * modification, are permitted provided that: (1) source code
      4  * distributions retain the above copyright notice and this paragraph
      5  * in its entirety, and (2) distributions including binary code include
      6  * the above copyright notice and this paragraph in its entirety in
      7  * the documentation or other materials provided with the distribution.
      8  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND
      9  * WITHOUT ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, WITHOUT
     10  * LIMITATION, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
     11  * FOR A PARTICULAR PURPOSE.
     12  */
     13 
     14 #ifndef lint
     15 static const char rcsid[] _U_ =
     16     "@(#) $Header$";
     17 #endif
     18 
     19 #ifdef HAVE_CONFIG_H
     20 #include "config.h"
     21 #endif
     22 
     23 #include <tcpdump-stdinc.h>
     24 
     25 #include <stdio.h>
     26 #include <stdlib.h>
     27 
     28 #include "interface.h"
     29 #include "extract.h"
     30 
     31 /*
     32  * Includes WebDAV requests.
     33  */
     34 static const char *httpcmds[] = {
     35 	"GET",
     36 	"PUT",
     37 	"COPY",
     38 	"HEAD",
     39 	"LOCK",
     40 	"MOVE",
     41 	"POLL",
     42 	"POST",
     43 	"BCOPY",
     44 	"BMOVE",
     45 	"MKCOL",
     46 	"TRACE",
     47 	"LABEL",
     48 	"MERGE",
     49 	"DELETE",
     50 	"SEARCH",
     51 	"UNLOCK",
     52 	"REPORT",
     53 	"UPDATE",
     54 	"NOTIFY",
     55 	"BDELETE",
     56 	"CONNECT",
     57 	"OPTIONS",
     58 	"CHECKIN",
     59 	"PROPFIND",
     60 	"CHECKOUT",
     61 	"CCM_POST",
     62 	"SUBSCRIBE",
     63 	"PROPPATCH",
     64 	"BPROPFIND",
     65 	"BPROPPATCH",
     66 	"UNCHECKOUT",
     67 	"MKACTIVITY",
     68 	"MKWORKSPACE",
     69 	"UNSUBSCRIBE",
     70 	"RPC_CONNECT",
     71 	"VERSION-CONTROL",
     72 	"BASELINE-CONTROL",
     73 	NULL
     74 };
     75 
     76 void
     77 http_print(netdissect_options *ndo, const u_char *pptr, u_int len)
     78 {
     79 	txtproto_print(ndo, pptr, len, "http", httpcmds, RESP_CODE_SECOND_TOKEN);
     80 }
     81