Commit e4b01bea authored by Frédéric Leroy's avatar Frédéric Leroy

refactor(conf2uedata.c): rewrite main() and add parse_config_file()

parent 2b313a20
......@@ -8,21 +8,19 @@
char * make_filename(const char *output_dir, const char *filename, int ueid);
int get_config_from_file(const char *filename, config_t *config);
int parse_config_file(const char *filename);
int main(int argc, char**argv) {
int rc = EXIT_SUCCESS;
int option;
const char* conf_file = NULL;
while ((option = getopt(argc, argv, options)) != -1) {
switch (option) {
case 'c':
parse_data = TRUE;
conf_file = optarg;
break;
case 'o':
output_dir = optarg;
output = TRUE;
break;
case 'h':
_display_usage();
......@@ -33,25 +31,28 @@ int main(int argc, char**argv) {
}
}
if (output == FALSE && parse_data == TRUE) {
if (output_dir == NULL ) {
printf("No output option found\n");
_display_usage();
return EXIT_FAILURE;
}
if (output == TRUE && parse_data == FALSE) {
if ( conf_file == NULL ) {
printf("No Configuration file is given\n");
_display_usage();
return EXIT_FAILURE;
}
if (parse_data == FALSE && print_data == FALSE) {
printf("No options found\n");
_display_usage();
return EXIT_FAILURE;
if ( parse_config_file(conf_file) == EXIT_FAILURE ) {
exit(EXIT_FAILURE);
}
if (parse_data) {
exit(EXIT_SUCCESS);
}
int parse_config_file(const char *filename) {
int rc = EXIT_SUCCESS;
int ret;
int ue_nb = 0;
config_setting_t *root_setting = NULL;
......@@ -60,7 +61,7 @@ int main(int argc, char**argv) {
char user[10];
config_t cfg;
ret = get_config_from_file(conf_file, &cfg);
ret = get_config_from_file(filename, &cfg);
if (ret == EXIT_FAILURE) {
exit(1);
}
......@@ -113,9 +114,7 @@ int main(int argc, char**argv) {
_display_usim_data(i);
}
config_destroy(&cfg);
}
exit(EXIT_SUCCESS);
return(EXIT_SUCCESS);
}
int get_config_from_file(const char *filename, config_t *config) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment