int stream_pos = 0;
- get_line(config_stream, &line, &stream_pos);
- get_key(&line, &value);
- get_value(&line, &value);
- trim_config_value(&value);
-
- if (strcmp(value.key, "scanner_url") == 0) {
- config->scanner_url = malloc(sizeof(char) * value.value_length);
- memcpy(config->scanner_url, value.value, value.value_length);
- }
-
- free(line.line);
- line.line = NULL;
- line.length = 0;
- free(value.key);
- value.key = NULL;
- value.key_length = 0;
- free(value.value);
- value.value = NULL;
- value.value_length = 0;
-
- get_line(config_stream, &line, &stream_pos);
- get_key(&line, &value);
- get_value(&line, &value);
- trim_config_value(&value);
- if (strcmp(value.key, "username") == 0) {
- config->username = malloc(sizeof(char) * value.value_length);
- memcpy(config->username, value.value, value.value_length);
+ while(strlen(config_stream) > stream_pos) {
+ free(line.line);
+ line.line = NULL;
+ line.length = 0;
+ free(value.key);
+ value.key = NULL;
+ value.key_length = 0;
+ free(value.value);
+ value.value = NULL;
+ value.value_length = 0;
+
+ get_line(config_stream, &line, &stream_pos);
+ get_key(&line, &value);
+ get_value(&line, &value);
+ trim_config_value(&value);
+
+ if (strcmp(value.key, "scanner_url") == 0) {
+ config->scanner_url = malloc(sizeof(char) * value.value_length);
+ memcpy(config->scanner_url, value.value, value.value_length);
+ }
+
+ if (strcmp(value.key, "username") == 0) {
+ config->username = malloc(sizeof(char) * value.value_length);
+ memcpy(config->username, value.value, value.value_length);
+ }
}
free(line.line);