Support SLL data link layer
GoogleCodeExporter opened this issue · 2 comments
GoogleCodeExporter commented
Currently, Ethernet is the only data link layer supported by libcrafter. A very
common data link layer (pseudo) protocol is SLL (Linux cooked-mode capture),
which is used, for example, when capturing from the "any" device using libpcap.
It also appears with other types of devices, such as PPP or virtual network
cards in virtual hosts.
Currently, it is possible to parse packets obtained from libpcap from this kind
of interface with the following code:
---- snip ----
#define SLL_HEADER_LEN 16
/* ... do something ... */
char* data;
int len;
/* ... obtain data ... */
Packet p;
p.PacketFromIP(data + SLL_HEADER_LEN, len - SLL_HEADER_LEN);
/* ... do something ... */
---- snip ----
It would be good to have a Packet::PacketFromSLL(...) or even a more generic
Packet::PacketFromDatalinkLayer (which would need to figure out what kind of
interface the packet came from).
Original issue reported on code.google.com by brunon...@brunonery.com
on 27 Apr 2012 at 4:49
GoogleCodeExporter commented
Original comment by pellegre...@gmail.com
on 27 Apr 2012 at 6:08
- Changed state: Accepted
GoogleCodeExporter commented
Original comment by pellegre...@gmail.com
on 5 Jun 2012 at 5:24
- Changed state: Fixed