Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet/igmp_var.h
Show First 20 Lines • Show All 142 Lines • ▼ Show 20 Lines | |||||
#define IGMP_URI_INIT 3 /* Unsolicited Report Interval (s) */ | #define IGMP_URI_INIT 3 /* Unsolicited Report Interval (s) */ | ||||
#define IGMP_URI_MIN 0 | #define IGMP_URI_MIN 0 | ||||
#define IGMP_URI_MAX 10 | #define IGMP_URI_MAX 10 | ||||
#define IGMP_MAX_G_GS_PACKETS 8 /* # of packets to answer G/GS */ | #define IGMP_MAX_G_GS_PACKETS 8 /* # of packets to answer G/GS */ | ||||
#define IGMP_MAX_STATE_CHANGE_PACKETS 8 /* # of packets per state change */ | #define IGMP_MAX_STATE_CHANGE_PACKETS 8 /* # of packets per state change */ | ||||
#define IGMP_MAX_RESPONSE_PACKETS 16 /* # of packets for general query */ | #define IGMP_MAX_RESPONSE_PACKETS 16 /* # of packets for general query */ | ||||
#define IGMP_MAX_RESPONSE_BURST 4 /* # of responses to send at once */ | #define IGMP_MAX_RESPONSE_BURST 4 /* # of responses to send at once */ | ||||
#define IGMP_RESPONSE_BURST_INTERVAL (PR_FASTHZ / 2) /* 500ms */ | |||||
/* | /* | ||||
* IGMP-specific mbuf flags. | * IGMP-specific mbuf flags. | ||||
*/ | */ | ||||
#define M_IGMPV2 M_PROTO1 /* Packet is IGMPv2 */ | #define M_IGMPV2 M_PROTO1 /* Packet is IGMPv2 */ | ||||
#define M_IGMPV3_HDR M_PROTO2 /* Packet has IGMPv3 headers */ | #define M_IGMPV3_HDR M_PROTO2 /* Packet has IGMPv3 headers */ | ||||
#define M_GROUPREC M_PROTO3 /* mbuf chain is a group record */ | #define M_GROUPREC M_PROTO3 /* mbuf chain is a group record */ | ||||
#define M_IGMP_LOOP M_PROTO4 /* transmit on loif, not real ifp */ | #define M_IGMP_LOOP M_PROTO4 /* transmit on loif, not real ifp */ | ||||
▲ Show 20 Lines • Show All 58 Lines • ▼ Show 20 Lines | struct igmp_ifsoftc { | ||||
uint32_t igi_rv; /* IGMPv3 Robustness Variable */ | uint32_t igi_rv; /* IGMPv3 Robustness Variable */ | ||||
uint32_t igi_qi; /* IGMPv3 Query Interval (s) */ | uint32_t igi_qi; /* IGMPv3 Query Interval (s) */ | ||||
uint32_t igi_qri; /* IGMPv3 Query Response Interval (s) */ | uint32_t igi_qri; /* IGMPv3 Query Response Interval (s) */ | ||||
uint32_t igi_uri; /* IGMPv3 Unsolicited Report Interval (s) */ | uint32_t igi_uri; /* IGMPv3 Unsolicited Report Interval (s) */ | ||||
struct mbufq igi_gq; /* general query responses queue */ | struct mbufq igi_gq; /* general query responses queue */ | ||||
}; | }; | ||||
int igmp_change_state(struct in_multi *); | int igmp_change_state(struct in_multi *); | ||||
void igmp_fasttimo(void); | |||||
struct igmp_ifsoftc * | struct igmp_ifsoftc * | ||||
igmp_domifattach(struct ifnet *); | igmp_domifattach(struct ifnet *); | ||||
void igmp_domifdetach(struct ifnet *); | void igmp_domifdetach(struct ifnet *); | ||||
void igmp_ifdetach(struct ifnet *); | void igmp_ifdetach(struct ifnet *); | ||||
int igmp_input(struct mbuf **, int *, int); | int igmp_input(struct mbuf **, int *, int); | ||||
void igmp_slowtimo(void); | |||||
SYSCTL_DECL(_net_inet_igmp); | SYSCTL_DECL(_net_inet_igmp); | ||||
#endif /* _KERNEL */ | #endif /* _KERNEL */ | ||||
#endif | #endif |