diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/shared/sysctl-util.c | 26 |
1 files changed, 9 insertions, 17 deletions
diff --git a/src/shared/sysctl-util.c b/src/shared/sysctl-util.c index 650c9c98b9..55f4e48601 100644 --- a/src/shared/sysctl-util.c +++ b/src/shared/sysctl-util.c @@ -58,31 +58,23 @@ char *sysctl_normalize(char *s) { } int sysctl_write(const char *property, const char *value) { - _cleanup_free_ char *p = NULL; - char *n; - - log_debug("Setting '%s' to '%s'", property, value); + char *p; - p = new(char, strlen("/proc/sys/") + strlen(property) + 1); - if (!p) - return log_oom(); + assert(property); + assert(value); - n = stpcpy(p, "/proc/sys/"); - strcpy(n, property); + log_debug("Setting '%s' to '%s'", property, value); + p = strjoina("/proc/sys/", property); return write_string_file(p, value); } int sysctl_read(const char *property, char **content) { - _cleanup_free_ char *p = NULL; - char *n; - - p = new(char, strlen("/proc/sys/") + strlen(property) + 1); - if (!p) - return log_oom(); + char *p; - n = stpcpy(p, "/proc/sys/"); - strcpy(n, property); + assert(property); + assert(content); + p = strjoina("/proc/sys/", property); return read_full_file(p, content, NULL); } |