diff options
Diffstat (limited to 'conf.c')
| -rw-r--r-- | conf.c | 16 | 
1 files changed, 11 insertions, 5 deletions
| @@ -44,7 +44,8 @@ conf_t *conf_load( int argc, char *argv[] )  	conf = g_new0( conf_t, 1 ); -	conf->iface = NULL; +	conf->iface_in = NULL; +	conf->iface_out = NULL;  	conf->port = g_strdup( "6667" );  	conf->nofork = 0;  	conf->verbose = 0; @@ -82,7 +83,7 @@ conf_t *conf_load( int argc, char *argv[] )  	{  		if( opt == 'i' )  		{ -			conf->iface = g_strdup( optarg ); +			conf->iface_in = g_strdup( optarg );  		}  		else if( opt == 'p' )  		{ @@ -131,7 +132,7 @@ conf_t *conf_load( int argc, char *argv[] )  			        "An IRC-to-other-chat-networks gateway\n"  			        "\n"  			        "  -I  Classic/InetD mode. (Default)\n" -			        "  -D  Daemon mode. (Still EXPERIMENTAL!)\n" +			        "  -D  Daemon mode. (one process serves all)\n"  			        "  -F  Forking daemon. (one process per client)\n"  				"  -u  Run daemon as specified user.\n"  			        "  -P  Specify PID-file (not for inetd mode)\n" @@ -202,14 +203,19 @@ static int conf_loadini( conf_t *conf, char *file )  			}  			else if( g_strcasecmp( ini->key, "daemoninterface" ) == 0 )  			{ -				g_free( conf->iface ); -				conf->iface = g_strdup( ini->value ); +				g_free( conf->iface_in ); +				conf->iface_in = g_strdup( ini->value );  			}  			else if( g_strcasecmp( ini->key, "daemonport" ) == 0 )  			{  				g_free( conf->port );  				conf->port = g_strdup( ini->value );  			} +			else if( g_strcasecmp( ini->key, "clientinterface" ) == 0 ) +			{ +				g_free( conf->iface_out ); +				conf->iface_out = g_strdup( ini->value ); +			}  			else if( g_strcasecmp( ini->key, "authmode" ) == 0 )  			{  				if( g_strcasecmp( ini->value, "registered" ) == 0 ) | 
