http_filter renamed, README fixed
authorBertrone Matteo <m.bertrone@gmail.com>
Thu, 18 Feb 2016 11:36:28 +0000 (12:36 +0100)
committerBertrone Matteo <m.bertrone@gmail.com>
Thu, 18 Feb 2016 11:36:28 +0000 (12:36 +0100)
README.md
examples/networking/http_filter/README.md
examples/networking/http_filter/http-parse-complete.c [moved from examples/networking/http_filter/http-parse-v2.c with 100% similarity]
examples/networking/http_filter/http-parse-complete.py [moved from examples/networking/http_filter/http-parse-v2.py with 98% similarity]
examples/networking/http_filter/http-parse-simple.c [moved from examples/networking/http_filter/http-parse.c with 100% similarity]
examples/networking/http_filter/http-parse-simple.py [moved from examples/networking/http_filter/http-parse.py with 97% similarity]

index e333046..957084b 100644 (file)
--- a/README.md
+++ b/README.md
@@ -116,6 +116,7 @@ Tools:
 Examples:
 
 - examples/networking/[distributed_bridge/](examples/networking/distributed_bridge): Distributed bridge example.
+- examples/networking/[http_filter/](examples/networking/http_filter): Simple HTTP filter example.
 - examples/networking/[simple_tc.py](examples/networking/simple_tc.py): Simple traffic control example.
 - examples/networking/[simulation.py](examples/networking/simulation.py): Simulation helper.
 - examples/networking/neighbor_sharing/[tc_neighbor_sharing.py](examples/networking/neighbor_sharing/tc_neighbor_sharing.py) examples/networking/neighbor_sharing/[tc_neighbor_sharing.c](examples/networking/neighbor_sharing/tc_neighbor_sharing.c): Per-IP classification and rate limiting.
index 40f19e6..2150a94 100644 (file)
@@ -1,13 +1,13 @@
-#Simple HTTP Filter: Project purpose
+#HTTP Filter
 
-Write an eBPF application that parses HTTP packets and extracts (and prints on screen) the URL contained in the GET/POST request.
+eBPF application that parses HTTP packets and extracts (and prints on screen) the URL contained in the GET/POST request.
 
 [eBPF HTTP Filter - Short Presentation](https://github.com/iovisor/bpf-docs/blob/master/ebpf_http_filter.pdf)
 
 #Usage Example
 
 ```Shell
-$ sudo python http-parse-v2.py 
+$ sudo python http-parse-complete.py 
 GET /pipermail/iovisor-dev/ HTTP/1.1
 HTTP/1.1 200 OK
 GET /favicon.ico HTTP/1.1
@@ -27,14 +27,14 @@ Matching packets are forwarded to user space, others dropped by the filter.<br /
 <br />
 Python script reads filtered raw packets from the socket, if necessary reassembles packets belonging to the same session, and prints on stdout the first line of the HTTP GET/POST request. <br />
 
-#v1 vs v2
+#simple vs complete
 
-First version is the simple one: if the url is too long (splitted in more than one packet) is truncated. <br />
-Second version is quite more complex: if necessary reassembles packets belonging to the same session and prints the complete url.
+simple version: if the url is too long (splitted in more than one packet) is truncated. <br />
+complete version: if necessary reassembles packets belonging to the same session and prints the complete url.
 
 #To run:
 
 ```Shell
-$ sudo python http-parse.py
-$ sudo python http-parse-v2.py
+$ sudo python http-parse-simple.py
+$ sudo python http-parse-complete.py
 ```
\ No newline at end of file
@@ -76,8 +76,8 @@ def cleanup():
 #-----FUNCTIONS-END-------------------------#
 
 
-# initialize BPF - load source code from http-parse.c
-bpf = BPF(src_file = "http-parse-v2.c",debug = 0)
+# initialize BPF - load source code from http-parse-complete.c
+bpf = BPF(src_file = "http-parse-complete.c",debug = 0)
 
 #load eBPF program http_filter of type SOCKET_FILTER into the kernel eBPF vm
 #more info about eBPF program types
@@ -19,8 +19,8 @@ import sys
 import socket
 import os
 
-# initialize BPF - load source code from http-parse.c
-bpf = BPF(src_file = "http-parse.c",debug = 0)
+# initialize BPF - load source code from http-parse-simple.c
+bpf = BPF(src_file = "http-parse-simple.c",debug = 0)
 
 #load eBPF program http_filter of type SOCKET_FILTER into the kernel eBPF vm
 #more info about eBPF program types