diff options
author | David Hill <dhill@cvs.openbsd.org> | 2017-04-09 17:57:59 +0000 |
---|---|---|
committer | David Hill <dhill@cvs.openbsd.org> | 2017-04-09 17:57:59 +0000 |
commit | 9d7d3799e9b37a36dfe61771a167f1451b3de8e4 (patch) | |
tree | e9a96b793d1f4da20401fdee4d218f2f9dcec933 /sys/netinet | |
parent | c061d38f5cd4303f0be4f5f67669cee091528ce4 (diff) |
Use mallocarray to allocate multicast group memberships.
ok deraadt@
Diffstat (limited to 'sys/netinet')
-rw-r--r-- | sys/netinet/ip_carp.c | 6 | ||||
-rw-r--r-- | sys/netinet/ip_output.c | 10 |
2 files changed, 8 insertions, 8 deletions
diff --git a/sys/netinet/ip_carp.c b/sys/netinet/ip_carp.c index 9944b4a5201..59ad35dc44b 100644 --- a/sys/netinet/ip_carp.c +++ b/sys/netinet/ip_carp.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ip_carp.c,v 1.305 2017/04/05 13:35:18 deraadt Exp $ */ +/* $OpenBSD: ip_carp.c,v 1.306 2017/04/09 17:57:58 dhill Exp $ */ /* * Copyright (c) 2002 Michael Shalayeff. All rights reserved. @@ -795,8 +795,8 @@ carp_clone_create(struct if_clone *ifc, int unit) #ifdef INET6 sc->sc_im6o.im6o_hlim = CARP_DFLTTL; #endif /* INET6 */ - sc->sc_imo.imo_membership = (struct in_multi **)malloc( - (sizeof(struct in_multi *) * IP_MIN_MEMBERSHIPS), M_IPMOPTS, + sc->sc_imo.imo_membership = (struct in_multi **)mallocarray( + IP_MIN_MEMBERSHIPS, sizeof(struct in_multi *), M_IPMOPTS, M_WAITOK|M_ZERO); sc->sc_imo.imo_max_memberships = IP_MIN_MEMBERSHIPS; diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index 09ddca3eb8f..3802b834142 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ip_output.c,v 1.336 2017/02/09 15:19:32 jca Exp $ */ +/* $OpenBSD: ip_output.c,v 1.337 2017/04/09 17:57:58 dhill Exp $ */ /* $NetBSD: ip_output.c,v 1.28 1996/02/13 23:43:07 christos Exp $ */ /* @@ -1344,8 +1344,8 @@ ip_setmoptions(int optname, struct ip_moptions **imop, struct mbuf *m, * allocate one and initialize to default values. */ imo = malloc(sizeof(*imo), M_IPMOPTS, M_WAITOK|M_ZERO); - immp = (struct in_multi **)malloc( - (sizeof(*immp) * IP_MIN_MEMBERSHIPS), M_IPMOPTS, + immp = (struct in_multi **)mallocarray( + IP_MIN_MEMBERSHIPS, sizeof(*immp), M_IPMOPTS, M_WAITOK|M_ZERO); *imop = imo; imo->imo_ifidx = 0; @@ -1499,8 +1499,8 @@ ip_setmoptions(int optname, struct ip_moptions **imop, struct mbuf *m, omships = imo->imo_membership; newmax = ((imo->imo_max_memberships + 1) * 2) - 1; if (newmax <= IP_MAX_MEMBERSHIPS) { - nmships = (struct in_multi **)malloc( - sizeof(*nmships) * newmax, M_IPMOPTS, + nmships = (struct in_multi **)mallocarray( + newmax, sizeof(*nmships), M_IPMOPTS, M_NOWAIT|M_ZERO); if (nmships != NULL) { memcpy(nmships, omships, |