diff options
Diffstat (limited to 'pythonmod/pythonmod_utils.c')
| -rw-r--r-- | pythonmod/pythonmod_utils.c | 15 | 
1 files changed, 15 insertions, 0 deletions
| diff --git a/pythonmod/pythonmod_utils.c b/pythonmod/pythonmod_utils.c index 1091dcf107277..05914b88a8fba 100644 --- a/pythonmod/pythonmod_utils.c +++ b/pythonmod/pythonmod_utils.c @@ -48,6 +48,7 @@  #include "util/data/msgreply.h"  #include "util/storage/slabhash.h"  #include "util/regional.h" +#include "iterator/iter_delegpt.h"  #include "ldns/sbuffer.h"  #undef _POSIX_C_SOURCE @@ -176,3 +177,17 @@ void reply_addr2str(struct comm_reply* reply, char* dest, int maxlen)  	   return;  	dest[maxlen-1] = 0;  } + +/* Convert target->addr to string */ +void delegpt_addr_addr2str(struct delegpt_addr* target, char *dest, int maxlen) +{ +	int af = (int)((struct sockaddr_in*) &(target->addr))->sin_family; +	void* sinaddr = &((struct sockaddr_in*) &(target->addr))->sin_addr; + +	if(af == AF_INET6) +		sinaddr = &((struct sockaddr_in6*)&(target->addr))->sin6_addr; +	dest[0] = 0; +	if (inet_ntop(af, sinaddr, dest, (socklen_t)maxlen) == 0) +	   return; +	dest[maxlen-1] = 0; +} | 
