From: Bert Hubert Date: Fri, 28 Apr 2006 18:28:50 +0000 (+0000) Subject: improve error reporting from houseKeeping(), fix bind on FreeBSD X-Git-Tag: rec-3.1.2~74 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=779828c4e6d79b0c8e259a9fdee4200bfe106542;p=pdns improve error reporting from houseKeeping(), fix bind on FreeBSD git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@790 d19b8d6e-7fed-0310-83ef-9ca221ded41b --- diff --git a/pdns/pdns_recursor.cc b/pdns/pdns_recursor.cc index 8901d333e..0d1dc3351 100644 --- a/pdns/pdns_recursor.cc +++ b/pdns/pdns_recursor.cc @@ -205,13 +205,13 @@ int makeClientSocket(int family) if(family==AF_INET) { sin4->sin4.sin_port = htons(port); - if (::bind(ret, (struct sockaddr *)&*sin4, sizeof(*sin4)) >= 0) + if (::bind(ret, (struct sockaddr *)&*sin4, sin4->getSocklen()) >= 0) break; } else { sin6->sin6.sin6_port = htons(port); - if (::bind(ret, (struct sockaddr *)&*sin6, sizeof(*sin6)) >= 0) + if (::bind(ret, (struct sockaddr *)&*sin6, sin6->getSocklen()) >= 0) break; } } @@ -899,6 +899,7 @@ void doStats(void) } static void houseKeeping(void *) +try { static time_t last_stat, last_rootupdate, last_prune; struct timeval now; @@ -944,7 +945,11 @@ static void houseKeeping(void *) L<