summaryrefslogtreecommitdiffstats
path: root/sys/netinet/in.h
diff options
context:
space:
mode:
authorbluhm <bluhm@openbsd.org>2019-10-23 19:58:32 +0000
committerbluhm <bluhm@openbsd.org>2019-10-23 19:58:32 +0000
commit71713a9b89c51a3eb9a449b7264ddc618785ae81 (patch)
tree824197bc2d70a2754bb9a5e29252677ae886902d /sys/netinet/in.h
parentPrefer the size-independent ELF identifiers over the size-specific ones. (diff)
downloadwireguard-openbsd-71713a9b89c51a3eb9a449b7264ddc618785ae81.tar.xz
wireguard-openbsd-71713a9b89c51a3eb9a449b7264ddc618785ae81.zip
Kernel is missing propper input validation when configuring addresses.
Fix the SIOCAIFADDR and SIOCDIFADDR ioctl(2) by implementing in_sa2sin() to validate inet address family and address length. OK visa@
Diffstat (limited to 'sys/netinet/in.h')
-rw-r--r--sys/netinet/in.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/in.h b/sys/netinet/in.h
index 5190efc0206..48111a1c5bc 100644
--- a/sys/netinet/in.h
+++ b/sys/netinet/in.h
@@ -1,4 +1,4 @@
-/* $OpenBSD: in.h,v 1.133 2018/10/13 18:36:01 florian Exp $ */
+/* $OpenBSD: in.h,v 1.134 2019/10/23 19:58:32 bluhm Exp $ */
/* $NetBSD: in.h,v 1.20 1996/02/13 23:41:47 christos Exp $ */
/*
@@ -818,6 +818,7 @@ void in_ifdetach(struct ifnet *);
int in_mask2len(struct in_addr *);
void in_len2mask(struct in_addr *, int);
int in_nam2sin(const struct mbuf *, struct sockaddr_in **);
+int in_sa2sin(struct sockaddr *, struct sockaddr_in **);
char *inet_ntoa(struct in_addr);
int inet_nat64(int, const void *, void *, const void *, u_int8_t);