--- /dev/null
+USING: byte-arrays combinators io io.backend
+io.sockets.headers io.sniffer.backend kernel
+prettyprint sequences ;
+IN: io.sniffer.filter.backend
+
+HOOK: sniffer-loop io-backend ( stream -- )
+HOOK: packet. io-backend ( string -- )
+
+: (packet.) ( string -- )
+ dup 14 head >byte-array
+ "--Ethernet Header--" print
+ dup etherneth.
+ dup etherneth-type {
+ ! 0x800 [ ] ! IP
+ ! 0x806 [ ] ! ARP
+ [ "Unknown type: " write .h ]
+ } case 2drop ;