diff options
author | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-08-16 20:11:00 +0200 |
---|---|---|
committer | Yu Watanabe <watanabe.yu+github@gmail.com> | 2022-08-17 07:30:20 +0200 |
commit | c01404fdf100b03dafa8a366d07f74f3c30d5330 (patch) | |
tree | 37f77c178eddc6cdfec9aa3e9538a2550383c8e1 /src/sysctl | |
parent | sysctl: use ordered_hashmap_ensure_put() (diff) | |
download | systemd-c01404fdf100b03dafa8a366d07f74f3c30d5330.tar.xz systemd-c01404fdf100b03dafa8a366d07f74f3c30d5330.zip |
sysctl: drop /proc/sys/ in prefix
Diffstat (limited to 'src/sysctl')
-rw-r--r-- | src/sysctl/sysctl.c | 20 |
1 files changed, 4 insertions, 16 deletions
diff --git a/src/sysctl/sysctl.c b/src/sysctl/sysctl.c index dda112f45a..ae079b7a71 100644 --- a/src/sysctl/sysctl.c +++ b/src/sysctl/sysctl.c @@ -56,18 +56,7 @@ static bool test_prefix(const char *p) { if (strv_isempty(arg_prefixes)) return true; - STRV_FOREACH(i, arg_prefixes) { - const char *t; - - t = path_startswith(*i, "/proc/sys/"); - if (!t) - t = *i; - - if (path_startswith(p, t)) - return true; - } - - return false; + return path_startswith_strv(p, arg_prefixes); } static Option *option_new( @@ -360,6 +349,7 @@ static int parse_argv(int argc, char *argv[]) { break; case ARG_PREFIX: { + const char *s; char *p; /* We used to require people to specify absolute paths @@ -368,10 +358,8 @@ static int parse_argv(int argc, char *argv[]) { * sysctl name available. */ sysctl_normalize(optarg); - if (path_startswith(optarg, "/proc/sys")) - p = strdup(optarg); - else - p = path_join("/proc/sys", optarg); + s = path_startswith(optarg, "/proc/sys"); + p = strdup(s ?: optarg); if (!p) return log_oom(); |