Lines Matching defs:mld

269 SYSCTL_NODE(_net_inet6, OID_AUTO, mld, CTLFLAG_RW | CTLFLAG_LOCKED, 0,
740 /*const*/ struct mld_hdr *mld)
751 ip6_sprintf(&mld->mld_addr),
771 if (IN6_IS_ADDR_UNSPECIFIED(&mld->mld_addr)) {
788 in6_setscope(&mld->mld_addr, ifp, NULL);
801 timer = (ntohs(mld->mld_maxdelay) * PR_SLOWHZ) / MLD_TIMER_SCALE;
831 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm);
837 ip6_sprintf(&mld->mld_addr),
844 in6_clearscope(&mld->mld_addr);
918 struct mldv2_query *mld;
941 mld = (struct mldv2_query *)(mtod(m, uint8_t *) + off);
943 maxdelay = ntohs(mld->mld_maxdelay); /* in 1/10ths of a second */
952 qrv = MLD_QRV(mld->mld_misc);
959 qqi = mld->mld_qqi;
961 qqi = MLD_QQIC_MANT(mld->mld_qqi) <<
962 (MLD_QQIC_EXP(mld->mld_qqi) + 3);
965 nsrc = ntohs(mld->mld_numsrc);
976 if (IN6_IS_ADDR_UNSPECIFIED(&mld->mld_addr)) {
996 in6_setscope(&mld->mld_addr, ifp, NULL);
1051 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm);
1089 in6_clearscope(&mld->mld_addr);
1104 struct mldv2_query *mld;
1111 mld = (struct mldv2_query *)(mtod(m0, uint8_t *) + off);
1129 nsrc = ntohs(mld->mld_numsrc);
1209 * Assumes mld points to mld_hdr in pulled up mbuf chain.
1216 /*const*/ struct mld_hdr *mld)
1224 ip6_sprintf(&mld->mld_addr),
1251 if (!IN6_IS_ADDR_MULTICAST(&mld->mld_addr) ||
1252 !IN6_ARE_ADDR_EQUAL(&mld->mld_addr, &dst)) {
1284 ip6_sprintf(&mld->mld_addr), ifp, ifp->if_name, ifp->if_unit));
1290 if (!IN6_IS_ADDR_UNSPECIFIED(&mld->mld_addr))
1291 in6_setscope(&mld->mld_addr, ifp, NULL);
1300 IN6_LOOKUP_MULTI(&mld->mld_addr, ifp, inm);
1334 ip6_sprintf(&mld->mld_addr),
1350 in6_clearscope(&mld->mld_addr);
1371 struct mld_hdr *mld;
1381 mld = (struct mld_hdr *)(mtod(m, uint8_t *) + off);
1382 if (mld->mld_type == MLD_LISTENER_QUERY &&
1388 IP6_EXTHDR_GET(mld, struct mld_hdr *, m, off, mldlen);
1389 if (mld == NULL) {
1398 switch (mld->mld_type) {
1402 if (mld_v1_input_query(ifp, ip6, mld) != 0)
1412 if (mld_v1_input_report(ifp, ip6, mld) != 0)
1945 struct mld_hdr *mld;
1995 mld = mtod(md, struct mld_hdr *);
1996 mld->mld_type = type;
1997 mld->mld_code = 0;
1998 mld->mld_cksum = 0;
1999 mld->mld_maxdelay = 0;
2000 mld->mld_reserved = 0;
2001 mld->mld_addr = in6m->in6m_addr;
2002 in6_clearscope(&mld->mld_addr);
2003 mld->mld_cksum = in6_cksum(mh, IPPROTO_ICMPV6,
3233 struct mld_hdr *mld;
3301 mld = (struct mld_hdr *)(mtod(md, uint8_t *) + off);
3302 type = mld->mld_type;
3352 struct mldv2_report *mld;
3398 mld = (struct mldv2_report *)(ip6 + 1);
3399 mld->mld_type = MLDV2_LISTENER_REPORT;
3400 mld->mld_code = 0;
3401 mld->mld_cksum = 0;
3402 mld->mld_v2_reserved = 0;
3403 mld->mld_v2_numrecs = htons(m->m_pkthdr.vt_nrecs);
3408 mld->mld_cksum = in6_cksum(mh, IPPROTO_ICMPV6,