Adding debian version 3.70~pre8+dfsg-1.
[syslinux-debian/hramrach.git] / gpxe / src / include / igmp.h
blob8b3292f2678d6d3383027adb8191718def8d52a9
1 #ifndef IGMP_H
2 #define IGMP_H
4 #include "stdint.h"
5 #include <gpxe/in.h>
7 #define IGMP_QUERY 0x11
8 #define IGMPv1_REPORT 0x12
9 #define IGMPv2_REPORT 0x16
10 #define IGMP_LEAVE 0x17
11 #define GROUP_ALL_HOSTS 0xe0000001 /* 224.0.0.1 Host byte order */
13 #define MULTICAST_MASK 0xf0000000
14 #define MULTICAST_NETWORK 0xe0000000
16 enum {
17 IGMP_SERVER,
18 MAX_IGMP
21 struct igmp {
22 uint8_t type;
23 uint8_t response_time;
24 uint16_t chksum;
25 struct in_addr group;
26 } PACKED;
28 struct igmp_ip_t { /* Format of an igmp ip packet */
29 struct iphdr ip;
30 uint8_t router_alert[4]; /* Router alert option */
31 struct igmp igmp;
32 } PACKED;
34 struct igmptable_t {
35 struct in_addr group;
36 unsigned long time;
37 } PACKED;
39 extern void join_group ( int slot, unsigned long group );
40 extern void leave_group ( int slot );
42 #endif /* IGMP_H */