update stripped subset of l7 patterns to 11-03-2007 patterns
[openwrt/.git] / package / iptables / files / l7 / http.pat
1 # HTTP - HyperText Transfer Protocol - RFC 2616
2 # Pattern attributes: great slow notsofast superset
3 # Protocol groups: document_retrieval ietf_draft_standard
4 # Wiki: http://protocolinfo.org/wiki/HTTP
5 #
6 # Usually runs on port 80
7 #
8 # This pattern has been tested and is believed to work well.
9 #
10 # this intentionally catches the response from the server rather than
11 # the request so that other protocols which use http (like kazaa) can be
12 # caught based on specific http requests regardless of the ordering of
13 # filters... also matches posts
14
15 # Sites that serve really long cookies may break this by pushing the
16 # server response too far away from the beginning of the connection. To
17 # fix this, increase the kernel's data buffer length.
18
19 http
20 # Status-Line = HTTP-Version SP Status-Code SP Reason-Phrase CRLF (rfc 2616)
21 # As specified in rfc 2616 a status code is preceeded and followed by a
22 # space. 
23 http/(0\.9|1\.0|1\.1) [1-5][0-9][0-9] [\x09-\x0d -~]*(connection:|content-type:|content-length:|date:)|post [\x09-\x0d -~]* http/[01]\.[019]
24 # A slightly faster version that might be good enough:
25 #http/(0\.9|1\.0|1\.1) [1-5][0-9][0-9]|post [\x09-\x0d -~]* http/[01]\.[019]
26 # old pattern(s):
27 #(http[\x09-\x0d -~]*(200 ok|302 |304 )[\x09-\x0d -~]*(connection:|content-type:|content-length:))|^(post [\x09-\x0d -~]* http/)