i_assert(fd >= 0);
+ i_zero(&so);
addrlen = sizeof(so);
ret = accept(fd, &so.sa, &addrlen);
i_assert(fd >= 0);
+ i_zero(&so);
addrlen = sizeof(so);
if (getsockname(fd, &so.sa, &addrlen) == -1)
return -1;
i_assert(fd >= 0);
+ i_zero(&so);
addrlen = sizeof(so);
if (getpeername(fd, &so.sa, &addrlen) == -1)
return -1;
union sockaddr_union_unix so;
socklen_t addrlen = sizeof(so);
+ i_zero(&so);
if (getsockname(fd, &so.sa, &addrlen) < 0)
return -1;
if (so.un.sun_family != AF_UNIX) {
if (memcmp(src->u.ip6.s6_addr, v4_prefix, sizeof(v4_prefix)) != 0)
return -1;
+ i_zero(dest);
dest->family = AF_INET;
memcpy(&dest->u.ip6, &src->u.ip6.s6_addr[3*4], 4);
return 0;