summaryrefslogtreecommitdiff
path: root/sys/net/rtsock.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/net/rtsock.c')
-rw-r--r--sys/net/rtsock.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net/rtsock.c b/sys/net/rtsock.c
index d78a60070615..24b9007a987f 100644
--- a/sys/net/rtsock.c
+++ b/sys/net/rtsock.c
@@ -1885,8 +1885,8 @@ rtsock_msg_buffer(int type, struct rt_addrinfo *rtinfo, struct walkarg *w, int *
#endif
dlen = SA_SIZE(sa);
if (cp != NULL && buflen >= dlen) {
- KASSERT(dlen <= sizeof(ss),
- ("%s: sockaddr size overflow", __func__));
+ if (sa->sa_len > sizeof(ss))
+ return (EINVAL);
bzero(&ss, sizeof(ss));
bcopy(sa, &ss, sa->sa_len);
sa = (struct sockaddr *)&ss;