X-Git-Url: https://arthur.barton.de/cgi-bin/gitweb.cgi?p=ngircd-alex.git;a=blobdiff_plain;f=src%2Fngircd%2Fconf.c;h=6a7f63393c6f7177f054b991e72a15009cf6fa1c;hp=b60057070f5077bf71c2898368c98b21b795788f;hb=eb4f9eac0c35071838c9367f1204db0d0b98ad2e;hpb=d7b5dd1bbf44ff9c8537def6d2083891b4f7d102 diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c index b6005707..6a7f6339 100644 --- a/src/ngircd/conf.c +++ b/src/ngircd/conf.c @@ -490,7 +490,7 @@ Conf_UnsetServer( CONN_ID Idx ) /** * Set connection information for specified configured server. */ -GLOBAL void +GLOBAL bool Conf_SetServer( int ConfServer, CONN_ID Idx ) { assert( ConfServer > NONE ); @@ -498,13 +498,15 @@ Conf_SetServer( int ConfServer, CONN_ID Idx ) if (Conf_Server[ConfServer].conn_id > NONE && Conf_Server[ConfServer].conn_id != Idx) { - Log(LOG_ALERT, - "Trying to update connection index for already registered server \"%s\": %d/%d - ignored.", - Conf_Server[ConfServer].name, - Conf_Server[ConfServer].conn_id, Idx); - return; + Log(LOG_ERR, + "Connection %d: Server configuration of \"%s\" already in use by connection %d!", + Idx, Conf_Server[ConfServer].name, + Conf_Server[ConfServer].conn_id); + Conn_Close(Idx, NULL, "Server configuration already in use", true); + return false; } Conf_Server[ConfServer].conn_id = Idx; + return true; } /**