]> arthur.barton.de Git - ngircd-alex.git/commitdiff
Streamline handling of invalid and unset server name
authorAlexander Barton <alex@barton.de>
Sat, 29 Jun 2019 14:02:52 +0000 (16:02 +0200)
committerAlexander Barton <alex@barton.de>
Sat, 29 Jun 2019 14:02:52 +0000 (16:02 +0200)
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.

src/ngircd/conf.c
src/ngircd/sighandlers.c

index 59a8ef9e7e3821d1683fa40f44727ac601ec94b5..ef36a2fe5d1c1842c851624c5322c91979554084 100644 (file)
@@ -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! */
index e352d586e80c9c62743b8c01ec5d0ffe354be832..6244846fb4b020275137f3f2189041c16a036c0c 100644 (file)
@@ -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;