diff options
| author | Michael Biebl <biebl@debian.org> | 2023-02-23 17:11:22 +0100 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2023-02-23 17:11:22 +0100 |
| commit | b22a7b55d0bc5a7999dccaeacdde745f5ace9d66 (patch) | |
| tree | 597d2716cfa4b904c98717b874371e0e7b5e0c71 /src/nm-daemon-helper | |
| parent | 1372848511cb896b80b51ed1a3e9606bd9816631 (diff) | |
New upstream version 1.42.2 upstream/1.42.2
Diffstat (limited to 'src/nm-daemon-helper')
| -rw-r--r-- | src/nm-daemon-helper/nm-daemon-helper.c | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/src/nm-daemon-helper/nm-daemon-helper.c b/src/nm-daemon-helper/nm-daemon-helper.c index a101bf9b..a447d63c 100644 --- a/src/nm-daemon-helper/nm-daemon-helper.c +++ b/src/nm-daemon-helper/nm-daemon-helper.c @@ -11,6 +11,7 @@ #if defined(__GLIBC__) #include <nss.h> #endif +#include <stdarg.h> enum { RETURN_SUCCESS = 0, @@ -61,6 +62,7 @@ cmd_resolve_address(void) } sockaddr; socklen_t sockaddr_size; char name[NI_MAXHOST]; + int ret; address = read_arg(); if (!address) @@ -83,15 +85,26 @@ cmd_resolve_address(void) } else return RETURN_INVALID_ARGS; - if (getnameinfo((struct sockaddr *) &sockaddr, - sockaddr_size, - name, - sizeof(name), - NULL, - 0, - NI_NAMEREQD) - != 0) + ret = getnameinfo((struct sockaddr *) &sockaddr, + sockaddr_size, + name, + sizeof(name), + NULL, + 0, + NI_NAMEREQD); + if (ret != 0) { + if (ret == EAI_SYSTEM) { + fprintf(stderr, + "getnameinfo() failed: %d (%s), system error: %d (%s)\n", + ret, + gai_strerror(ret), + errno, + strerror(errno)); + } else { + fprintf(stderr, "getnameinfo() failed: %d (%s)\n", ret, gai_strerror(ret)); + } return RETURN_ERROR; + } printf("%s", name); |