This is needed as getpeername() truncates the length to 2 if the
peer socket has no name.
metze
(cherry picked from commit
4784c8c3bea98592486ca973d57c99671eb68cb2)
Signed-off-by: Stefan Metzmacher <metze@samba.org>
struct tsocket_address *addr;
struct tsocket_address_bsd *bsda;
+ if (sa_socklen < sizeof(sa->sa_family)) {
+ errno = EINVAL;
+ return -1;
+ }
+
switch (sa->sa_family) {
case AF_UNIX:
- if (sa_socklen < sizeof(struct sockaddr_un)) {
- errno = EINVAL;
- return -1;
- }
break;
case AF_INET:
if (sa_socklen < sizeof(struct sockaddr_in)) {