Module: ngircd.git Branch: master Commit: 60bb40d67a8d7c1e38a5d8ca2b7968cf08706008 URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=60bb4...
Author: Alexander Barton alex@barton.de Date: Thu Dec 2 13:38:42 2010 +0100
Reset ID of outgoing server link on DNS error correctly
Not resetting the ID prevents the daemon from trying to re-establish outgoing server links when the DNS resolver failed to resole a hostname.
---
src/ngircd/conn.c | 5 ++++- 1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c index 2d5e129..a92f99f 100644 --- a/src/ngircd/conn.c +++ b/src/ngircd/conn.c @@ -1968,8 +1968,11 @@ cb_Connect_to_Server(int fd, UNUSED short events)
/* Read result from pipe */ len = Proc_Read(&Conf_Server[i].res_stat, dest_addrs, sizeof(dest_addrs)); - if (len == 0) + if (len == 0) { + /* Error resolving hostname: reset server structure */ + Conf_Server[i].conn_id = NONE; return; + }
assert((len % sizeof(ng_ipaddr_t)) == 0);