diff options
author | Gleb Smirnoff <glebius@FreeBSD.org> | 2013-10-15 10:31:42 +0000 |
---|---|---|
committer | Gleb Smirnoff <glebius@FreeBSD.org> | 2013-10-15 10:31:42 +0000 |
commit | 467589609803d3a7fad33351728840df11da8da6 (patch) | |
tree | b45d1919fe774bbd6cd51a2069b9cdc2b66cb7bf /sys/netinet/in.c | |
parent | 6ed910fabebba6e93d5e2bf6697821a9891bfcdb (diff) | |
download | src-467589609803d3a7fad33351728840df11da8da6.tar.gz src-467589609803d3a7fad33351728840df11da8da6.zip |
Remove ifa_init() and provide ifa_alloc() that will allocate and setup
struct ifaddr internally.
Sponsored by: Netflix
Sponsored by: Nginx, Inc.
Notes
Notes:
svn path=/head/; revision=256519
Diffstat (limited to 'sys/netinet/in.c')
-rw-r--r-- | sys/netinet/in.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/sys/netinet/in.c b/sys/netinet/in.c index 363f671e7dd9..80b8a51fab8b 100644 --- a/sys/netinet/in.c +++ b/sys/netinet/in.c @@ -404,16 +404,8 @@ in_control(struct socket *so, u_long cmd, caddr_t data, struct ifnet *ifp, goto out; } if (ia == NULL) { - ia = (struct in_ifaddr *) - malloc(sizeof *ia, M_IFADDR, M_NOWAIT | - M_ZERO); - if (ia == NULL) { - error = ENOBUFS; - goto out; - } - - ifa = &ia->ia_ifa; - ifa_init(ifa); + ifa = ifa_alloc(sizeof(struct in_ifaddr), M_WAITOK); + ia = (struct in_ifaddr *)ifa; ifa->ifa_addr = (struct sockaddr *)&ia->ia_addr; ifa->ifa_dstaddr = (struct sockaddr *)&ia->ia_dstaddr; ifa->ifa_netmask = (struct sockaddr *)&ia->ia_sockmask; |