aboutsummaryrefslogtreecommitdiffstats
path: root/conf.c
diff options
context:
space:
mode:
Diffstat (limited to 'conf.c')
-rw-r--r--conf.c27
1 files changed, 27 insertions, 0 deletions
diff --git a/conf.c b/conf.c
index 873aa0e7..e41590d3 100644
--- a/conf.c
+++ b/conf.c
@@ -62,6 +62,9 @@ conf_t *conf_load( int argc, char *argv[] )
conf->ping_interval = 180;
conf->ping_timeout = 300;
conf->user = NULL;
+ conf->ft_max_size = SIZE_MAX;
+ conf->ft_max_kbps = G_MAXUINT;
+ conf->ft_listen = NULL;
proxytype = 0;
i = conf_loadini( conf, global.conf_file );
@@ -305,6 +308,30 @@ static int conf_loadini( conf_t *conf, char *file )
g_free( conf->user );
conf->user = g_strdup( ini->value );
}
+ else if( g_strcasecmp( ini->key, "ft_max_size" ) == 0 )
+ {
+ size_t ft_max_size;
+ if( sscanf( ini->value, "%zu", &ft_max_size ) != 1 )
+ {
+ fprintf( stderr, "Invalid %s value: %s\n", ini->key, ini->value );
+ return 0;
+ }
+ conf->ft_max_size = ft_max_size;
+ }
+ else if( g_strcasecmp( ini->key, "ft_max_kbps" ) == 0 )
+ {
+ if( sscanf( ini->value, "%d", &i ) != 1 )
+ {
+ fprintf( stderr, "Invalid %s value: %s\n", ini->key, ini->value );
+ return 0;
+ }
+ conf->ft_max_kbps = i;
+ }
+ else if( g_strcasecmp( ini->key, "ft_listen" ) == 0 )
+ {
+ g_free( conf->ft_listen );
+ conf->ft_listen = g_strdup( ini->value );
+ }
else
{
fprintf( stderr, "Error: Unknown setting `%s` in configuration file (line %d).\n", ini->key, ini->line );