diff options
Diffstat (limited to 'include/linux/if_packet.h')
-rw-r--r-- | include/linux/if_packet.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/linux/if_packet.h b/include/linux/if_packet.h index 5f6d3e9d5..0ac234125 100644 --- a/include/linux/if_packet.h +++ b/include/linux/if_packet.h @@ -8,4 +8,41 @@ struct sockaddr_pkt unsigned short spkt_protocol; }; +struct sockaddr_ll +{ + unsigned short sll_family; + unsigned short sll_protocol; + int sll_ifindex; + unsigned short sll_hatype; + unsigned char sll_pkttype; + unsigned char sll_halen; + unsigned char sll_addr[8]; +}; + +/* Packet types */ + +#define PACKET_HOST 0 /* To us */ +#define PACKET_BROADCAST 1 /* To all */ +#define PACKET_MULTICAST 2 /* To group */ +#define PACKET_OTHERHOST 3 /* To someone else */ +#define PACKET_OUTGOING 4 /* Originated by us */ +#define PACKET_NDISC 17 /* Outgoing NDISC packet*/ + +/* Packet socket options */ + +#define PACKET_ADD_MEMBERSHIP 1 +#define PACKET_DROP_MEMBERSHIP 2 + +struct packet_mreq +{ + int mr_ifindex; + unsigned short mr_type; + unsigned short mr_alen; + unsigned char mr_address[8]; +}; + +#define PACKET_MR_MULTICAST 0 +#define PACKET_MR_PROMISC 1 +#define PACKET_MR_ALLMULTI 2 + #endif |