From: Alexander Barton Date: Sat, 29 Jun 2019 14:02:52 +0000 (+0200) Subject: Streamline handling of invalid and unset server name X-Git-Tag: rel-26-rc1~67 X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=commitdiff_plain;h=f8002057f20e71f24b52c3aab5df3dc1760a151e Streamline handling of invalid and unset server name Don't exit during runtime (REHASH command, HUP signal), because the server name can't be changed in this case anyway and the new invalid name will be ignored. --- diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c index 59a8ef9e..ef36a2fe 100644 --- a/src/ngircd/conf.c +++ b/src/ngircd/conf.c @@ -2234,7 +2234,8 @@ Validate_Config(bool Configtest, bool Rehash) break; } while (*(++ptr)); - if (!Conf_ServerName[0]) { + if (!Conf_ServerName[0] || !strchr(Conf_ServerName, '.')) + { /* No server name configured! */ config_valid = false; Config_Error(LOG_ALERT, @@ -2248,20 +2249,6 @@ Validate_Config(bool Configtest, bool Rehash) } } - if (Conf_ServerName[0] && !strchr(Conf_ServerName, '.')) { - /* No dot in server name! */ - config_valid = false; - Config_Error(LOG_ALERT, - "Invalid server name configured in \"%s\" (section 'Global': 'Name'): Dot missing!", - NGIRCd_ConfFile); - if (!Configtest) { - Config_Error(LOG_ALERT, - "%s exiting due to fatal errors!", - PACKAGE_NAME); - exit(1); - } - } - #ifdef STRICT_RFC if (!Conf_ServerAdminMail[0]) { /* No administrative contact configured! */ diff --git a/src/ngircd/sighandlers.c b/src/ngircd/sighandlers.c index e352d586..6244846f 100644 --- a/src/ngircd/sighandlers.c +++ b/src/ngircd/sighandlers.c @@ -119,7 +119,7 @@ Rehash(void) if (strcmp(old_name, Conf_ServerName) != 0 ) { strlcpy(Conf_ServerName, old_name, sizeof Conf_ServerName); Log(LOG_ERR, - "Can't change \"ServerName\" on runtime! Ignored new name."); + "Can't change server name (\"Name\") on runtime! Ignored new name."); } if (old_nicklen != Conf_MaxNickLength) { Conf_MaxNickLength = old_nicklen;