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 19http 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. 23http/(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/) 28