]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/conf.c
Move "ClientHost" and "ClientUserNick" to end of [Global] section
[ngircd-alex.git] / src / ngircd / conf.c
index 3ff5ddd896bf57ee5016f9e4b7b866217e6afb78..12893ad8f86446abaa1574280abefb14be6889a8 100644 (file)
@@ -351,7 +351,9 @@ Conf_Test( void )
        printf("  MaxConnections = %ld\n", Conf_MaxConnections);
        printf("  MaxConnectionsIP = %d\n", Conf_MaxConnectionsIP);
        printf("  MaxJoins = %d\n", Conf_MaxJoins > 0 ? Conf_MaxJoins : -1);
-       printf("  MaxNickLength = %u\n\n", Conf_MaxNickLength - 1);
+       printf("  MaxNickLength = %u\n", Conf_MaxNickLength - 1);
+       printf("  ClientHost = %s\n", Conf_ClientHost);
+       printf("  ClientUserNick = %s\n\n", yesno_to_str(Conf_ClientUserNick));
 
        puts("[FEATURES]");
        printf("  DNS = %s\n", yesno_to_str(Conf_DNS));
@@ -590,6 +592,8 @@ Set_Defaults(bool InitServers)
        int i;
 
        strcpy(Conf_ServerName, "");
+       strcpy(Conf_ClientHost, "");
+       Conf_ClientUserNick = false;
        snprintf(Conf_ServerInfo, sizeof Conf_ServerInfo, "%s %s",
                 PACKAGE_NAME, PACKAGE_VERSION);
        strcpy(Conf_ServerPwd, "");
@@ -970,6 +974,18 @@ Handle_GLOBAL( int Line, char *Var, char *Arg )
                        Config_Error_TooLong( Line, Var );
                return;
        }
+       if( strcasecmp( Var, "ClientHost" ) == 0 ) {
+               /* Client hostname */
+               len = strlcpy( Conf_ClientHost, Arg, sizeof( Conf_ClientHost ));
+               if (len >= sizeof( Conf_ClientHost ))
+                       Config_Error_TooLong( Line, Var );
+               return;
+       }
+       if( strcasecmp( Var, "ClientUserNick" ) == 0 ) {
+               /* Use client nick name as user name */
+               Conf_ClientUserNick = Check_ArgIsTrue( Arg );
+               return;
+       }
        if( strcasecmp( Var, "Info" ) == 0 ) {
                /* Info text of server */
                len = strlcpy( Conf_ServerInfo, Arg, sizeof( Conf_ServerInfo ));