]> git.tuebingen.mpg.de Git - adu.git/blobdiff - select.c
Make struct admissible uids local.
[adu.git] / select.c
index 226c16422061eee09667be8177ed0f869a2586b6..e3d97b11ef7893f09ba89008aa1994b30318fc39 100644 (file)
--- a/select.c
+++ b/select.c
@@ -77,9 +77,6 @@ static const uint64_t count_unit_divisors[] = {
 
 static const char size_unit_abbrevs[] = " BKMGT";
 static const char count_unit_abbrevs[] = "  kmgt";
-struct select_args_info select_conf;
-static struct uid_range *admissible_uids;
-
 static enum enum_size_unit format_size_value(enum enum_size_unit unit,
                uint64_t value, int print_unit, char *result)
 {
@@ -552,7 +549,7 @@ static int print_statistics(void)
        return 1;
 }
 
-static int read_uid_file(void)
+static int read_uid_file(struct uid_range *admissible_uids)
 {
        size_t size;
        uint32_t n;
@@ -590,15 +587,17 @@ out:
 int com_select(void)
 {
        int ret;
-       struct select_cmdline_parser_params params = {
-               .override = 1,
-               .initialize = 1,
-               .check_required = 1,
-               .check_ambiguity = 1,
-               .print_errors = 1
-       };
+       struct uid_range *admissible_uids = NULL;
 
        if (conf.select_options_given) {
+               struct select_cmdline_parser_params params = {
+                       .override = 1,
+                       .initialize = 1,
+                       .check_required = 1,
+                       .check_ambiguity = 1,
+                       .print_errors = 1
+               };
+
                if (select_cmdline_parser_string_ext(conf.select_options_arg,
                        &select_conf, "select", &params))
                        return -E_SYNTAX;
@@ -620,7 +619,7 @@ int com_select(void)
        if (ret < 0)
                return ret;
        check_signals();
-       ret = read_uid_file();
+       ret = read_uid_file(admissible_uids);
        if (ret < 0)
                return ret;
        check_signals();