summaryrefslogtreecommitdiffstats
path: root/src/server/globals.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/globals.c')
-rw-r--r--src/server/globals.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/server/globals.c b/src/server/globals.c
index 182b2cc..1e23fb3 100644
--- a/src/server/globals.c
+++ b/src/server/globals.c
@@ -10,6 +10,8 @@ char *_configDir = NULL;
char *_basePath = NULL;
int _vmdkLegacyMode = FALSE;
int _shutdown = 0;
+int _serverPenalty = 0;
+int _clientPenalty = 0;
#define SAVE_TO_VAR_STR(ss, kk) do { if (strcmp(section, #ss) == 0 && strcmp(key, #kk) == 0) { if (_ ## kk != NULL) free(_ ## kk); _ ## kk = strdup(value); } } while (0)
#define SAVE_TO_VAR_BOOL(ss, kk) do { if (strcmp(section, #ss) == 0 && strcmp(key, #kk) == 0) _ ## kk = atoi(value) != 0 || strcmp(value, "true") == 0 || strcmp(value, "True") == 0 || strcmp(value, "TRUE") == 0; } while (0)
@@ -19,6 +21,8 @@ static int ini_handler(void *custom, const char* section, const char* key, const
{
SAVE_TO_VAR_STR( dnbd3, basePath );
SAVE_TO_VAR_BOOL( dnbd3, vmdkLegacyMode );
+ SAVE_TO_VAR_INT( dnbd3, serverPenalty );
+ SAVE_TO_VAR_INT( dnbd3, clientPenalty );
return TRUE;
}
@@ -40,4 +44,6 @@ void globals_loadConfig()
char *end = _basePath + strlen( _basePath ) - 1;
while ( end >= _basePath && *end == '/' )
*end-- = '\0';
+ if ( _serverPenalty < 0 ) _serverPenalty = 0;
+ if ( _clientPenalty < 0 ) _clientPenalty = 0;
}