diff options
Diffstat (limited to 'conf.c')
| -rw-r--r-- | conf.c | 12 | 
1 files changed, 7 insertions, 5 deletions
| @@ -91,15 +91,15 @@ conf_t *conf_load( int argc, char *argv[] )  			conf->port = i;  		}  		else if( opt == 'n' ) -			conf->nofork=1; +			conf->nofork = 1;  		else if( opt == 'v' ) -			conf->verbose=1; +			conf->verbose = 1;  		else if( opt == 'I' ) -			conf->runmode=RUNMODE_INETD; +			conf->runmode = RUNMODE_INETD;  		else if( opt == 'D' ) -			conf->runmode=RUNMODE_DAEMON; +			conf->runmode = RUNMODE_DAEMON;  		else if( opt == 'F' ) -			conf->runmode=RUNMODE_FORKDAEMON; +			conf->runmode = RUNMODE_FORKDAEMON;  		else if( opt == 'c' )  		{  			if( strcmp( CONF_FILE, optarg ) != 0 ) @@ -107,6 +107,8 @@ conf_t *conf_load( int argc, char *argv[] )  				g_free( CONF_FILE );  				CONF_FILE = g_strdup( optarg );  				g_free( conf ); +				/* Re-evaluate arguments. */ +				optind = 1;  				return( conf_load( argc, argv ) );  			}  		} | 
