diff options
Diffstat (limited to 'rpc/rpc-transport/socket/src/name.c')
-rw-r--r-- | rpc/rpc-transport/socket/src/name.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/rpc/rpc-transport/socket/src/name.c b/rpc/rpc-transport/socket/src/name.c index 3d3d108f135..1f866ccdecf 100644 --- a/rpc/rpc-transport/socket/src/name.c +++ b/rpc/rpc-transport/socket/src/name.c @@ -413,9 +413,11 @@ af_inet_server_get_local_sockaddr(rpc_transport_t *this, struct sockaddr *addr, } } - if (!(*addr_len) && res) { + if (!(*addr_len) && res && res->ai_addr) { memcpy(addr, res->ai_addr, res->ai_addrlen); *addr_len = res->ai_addrlen; + } else { + ret = -1; } freeaddrinfo(res); |