diff options
author | obrien <obrien@FreeBSD.org> | 2005-09-07 10:11:49 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2005-09-07 10:11:49 +0000 |
commit | c532dfe7456f7cfd69cc1875646ebbafd781ae5c (patch) | |
tree | a65b15f9016e79eeea392bd977253f6b4fb46d5e /sys/netinet6/ip6_output.c | |
parent | b888392910bbf46a7bf35f9715822cfd277e96a9 (diff) | |
download | FreeBSD-src-c532dfe7456f7cfd69cc1875646ebbafd781ae5c.zip FreeBSD-src-c532dfe7456f7cfd69cc1875646ebbafd781ae5c.tar.gz |
IPv6 was improperly defining its malloc type the same as IPv4 (M_IPMADDR,
M_IPMOPTS, M_MRTABLE). Thus we had conflicting instantiations.
Create an IPv6-specific type to overcome this.
Diffstat (limited to 'sys/netinet6/ip6_output.c')
-rw-r--r-- | sys/netinet6/ip6_output.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/sys/netinet6/ip6_output.c b/sys/netinet6/ip6_output.c index 39ea602..5bdef30 100644 --- a/sys/netinet6/ip6_output.c +++ b/sys/netinet6/ip6_output.c @@ -113,7 +113,7 @@ #include <netinet6/ip6protosw.h> #include <netinet6/scope6_var.h> -static MALLOC_DEFINE(M_IPMOPTS, "ip6_moptions", "internet multicast options"); +static MALLOC_DEFINE(M_IP6MOPTS, "ip6_moptions", "internet multicast options"); struct ip6_exthdrs { struct mbuf *ip6e_ip6; @@ -2595,7 +2595,7 @@ ip6_setmoptions(optname, im6op, m) * allocate one and initialize to default values. */ im6o = (struct ip6_moptions *) - malloc(sizeof(*im6o), M_IPMOPTS, M_WAITOK); + malloc(sizeof(*im6o), M_IP6MOPTS, M_WAITOK); if (im6o == NULL) return (ENOBUFS); @@ -2764,14 +2764,14 @@ ip6_setmoptions(optname, im6op, m) * Everything looks good; add a new record to the multicast * address list for the given interface. */ - imm = malloc(sizeof(*imm), M_IPMADDR, M_WAITOK); + imm = malloc(sizeof(*imm), M_IP6MADDR, M_WAITOK); if (imm == NULL) { error = ENOBUFS; break; } if ((imm->i6mm_maddr = in6_addmulti(&mreq->ipv6mr_multiaddr, ifp, &error)) == NULL) { - free(imm, M_IPMADDR); + free(imm, M_IP6MADDR); break; } LIST_INSERT_HEAD(&im6o->im6o_memberships, imm, i6mm_chain); @@ -2861,7 +2861,7 @@ ip6_setmoptions(optname, im6op, m) */ LIST_REMOVE(imm, i6mm_chain); in6_delmulti(imm->i6mm_maddr); - free(imm, M_IPMADDR); + free(imm, M_IP6MADDR); break; default: @@ -2876,7 +2876,7 @@ ip6_setmoptions(optname, im6op, m) im6o->im6o_multicast_hlim == ip6_defmcasthlim && im6o->im6o_multicast_loop == IPV6_DEFAULT_MULTICAST_LOOP && im6o->im6o_memberships.lh_first == NULL) { - free(*im6op, M_IPMOPTS); + free(*im6op, M_IP6MOPTS); *im6op = NULL; } @@ -2946,9 +2946,9 @@ ip6_freemoptions(im6o) LIST_REMOVE(imm, i6mm_chain); if (imm->i6mm_maddr) in6_delmulti(imm->i6mm_maddr); - free(imm, M_IPMADDR); + free(imm, M_IP6MADDR); } - free(im6o, M_IPMOPTS); + free(im6o, M_IP6MOPTS); } /* |