git: d142a8a4f1ad - stable/14 - if_ovpn: fill out sin_len/sin6_len
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 13 Aug 2025 13:37:45 UTC
The branch stable/14 has been updated by kp:
URL: https://cgit.FreeBSD.org/src/commit/?id=d142a8a4f1ad877e22b37f691066cea7a3fa9e6a
commit d142a8a4f1ad877e22b37f691066cea7a3fa9e6a
Author: Kristof Provost <kp@FreeBSD.org>
AuthorDate: 2025-07-22 12:41:20 +0000
Commit: Kristof Provost <kp@FreeBSD.org>
CommitDate: 2025-08-13 13:24:51 +0000
if_ovpn: fill out sin_len/sin6_len
When we parse an nvlist sockaddr we should set the sockaddr_in(6)'s length
field. This isn't currently used by anything yet, but it's reasonable to expect
a sockaddr to contain its length.
MFC after: 3 weeks
Sponsored by: Rubicon Communications, LLC ("Netgate")
(cherry picked from commit e83df5367d30761803e09bd7fcf518638dfe43d2)
---
sys/net/if_ovpn.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/sys/net/if_ovpn.c b/sys/net/if_ovpn.c
index 7d9c3bb9c951..54d7cbd22c81 100644
--- a/sys/net/if_ovpn.c
+++ b/sys/net/if_ovpn.c
@@ -363,6 +363,7 @@ ovpn_nvlist_to_sockaddr(const nvlist_t *nvl, struct sockaddr_storage *sa)
memset(in, 0, sizeof(*in));
in->sin_family = af;
+ in->sin_len = sizeof(*in);
if (len != sizeof(in->sin_addr))
return (EINVAL);
@@ -379,6 +380,7 @@ ovpn_nvlist_to_sockaddr(const nvlist_t *nvl, struct sockaddr_storage *sa)
memset(in6, 0, sizeof(*in6));
in6->sin6_family = af;
+ in6->sin6_len = sizeof(*in6);
if (len != sizeof(in6->sin6_addr))
return (EINVAL);