summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--zwgc/main.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/zwgc/main.c b/zwgc/main.c
index e66e209..1725c13 100644
--- a/zwgc/main.c
+++ b/zwgc/main.c
@@ -407,7 +407,12 @@ notice_handler(ZNotice_t *notice)
#endif
#ifdef HAVE_ARES
- ares_getnameinfo(achannel, (const struct sockaddr *)&(notice->z_sender_sockaddr),
+ ares_getnameinfo(achannel,
+ (const struct sockaddr *)&(notice->z_sender_sockaddr),
+ notice->z_sender_sockaddr.sa.sa_family == AF_INET ?
+ sizeof(struct sockaddr_in) :
+ notice->z_sender_sockaddr.sa.sa_family == AF_INET6 ?
+ sizeof(struct sockaddr_in6) :
sizeof(notice->z_sender_sockaddr), ARES_NI_LOOKUPHOST,
notice_callback, notice);