From: Tom Gundersen Date: Tue, 3 Jun 2014 16:57:47 +0000 (+0200) Subject: networkd: split runtime config dir from state dir X-Git-Tag: v214~101 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=85b5673b337048fa881a5afb1d00d1a7b95950fb networkd: split runtime config dir from state dir Configuration will be in root:root /run/systemd/network and state will be in systemd-network:systemd-network /run/systemd/netif This matches what we do for logind's seat/session state. --- diff --git a/src/network/networkd-link.c b/src/network/networkd-link.c index 6677b949c..6e6fb8393 100644 --- a/src/network/networkd-link.c +++ b/src/network/networkd-link.c @@ -75,12 +75,12 @@ static int link_new(Manager *manager, sd_rtnl_message *message, Link **ret) { if (!link->ifname) return -ENOMEM; - r = asprintf(&link->state_file, "/run/systemd/network/links/%"PRIu64, + r = asprintf(&link->state_file, "/run/systemd/netif/links/%"PRIu64, link->ifindex); if (r < 0) return -ENOMEM; - r = asprintf(&link->lease_file, "/run/systemd/network/leases/%"PRIu64, + r = asprintf(&link->lease_file, "/run/systemd/netif/leases/%"PRIu64, link->ifindex); if (r < 0) return -ENOMEM; diff --git a/src/network/networkd-manager.c b/src/network/networkd-manager.c index 4b35ea0d2..2a0d5342d 100644 --- a/src/network/networkd-manager.c +++ b/src/network/networkd-manager.c @@ -83,7 +83,7 @@ int manager_new(Manager **ret) { if (!m) return -ENOMEM; - m->state_file = strdup("/run/systemd/network/state"); + m->state_file = strdup("/run/systemd/netif/state"); if (!m->state_file) return -ENOMEM; diff --git a/src/network/networkd.c b/src/network/networkd.c index d8f31a490..d6075359c 100644 --- a/src/network/networkd.c +++ b/src/network/networkd.c @@ -52,17 +52,17 @@ int main(int argc, char *argv[]) { /* Always create the directories people can create inotify * watches in. */ - r = mkdir_safe_label("/run/systemd/network", 0755, uid, gid); + r = mkdir_safe_label("/run/systemd/netif", 0755, uid, gid); if (r < 0) log_error("Could not create runtime directory: %s", strerror(-r)); - r = mkdir_safe_label("/run/systemd/network/links", 0755, uid, gid); + r = mkdir_safe_label("/run/systemd/netif/links", 0755, uid, gid); if (r < 0) log_error("Could not create runtime directory 'links': %s", strerror(-r)); - r = mkdir_safe_label("/run/systemd/network/leases", 0755, uid, gid); + r = mkdir_safe_label("/run/systemd/netif/leases", 0755, uid, gid); if (r < 0) log_error("Could not create runtime directory 'leases': %s", strerror(-r)); diff --git a/src/network/sd-network.c b/src/network/sd-network.c index ba13a30ae..3ebc5d8b1 100644 --- a/src/network/sd-network.c +++ b/src/network/sd-network.c @@ -42,7 +42,7 @@ static int link_get_flags(unsigned index, unsigned *flags) { assert(index); assert(flags); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, "FLAGS", &s, NULL); @@ -74,7 +74,7 @@ _public_ int sd_network_get_link_state(unsigned index, char **state) { assert_return(index, -EINVAL); assert_return(state, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, "ADMIN_STATE", &s, NULL); @@ -102,7 +102,7 @@ _public_ int sd_network_get_operational_state(char **state) { assert_return(state, -EINVAL); - r = parse_env_file("/run/systemd/network/state", NEWLINE, "OPER_STATE", + r = parse_env_file("/run/systemd/netif/state", NEWLINE, "OPER_STATE", &s, NULL); if (r == -ENOENT) return -ENODATA; @@ -124,7 +124,7 @@ _public_ int sd_network_get_link_operational_state(unsigned index, char **state) assert_return(index, -EINVAL); assert_return(state, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, "OPER_STATE", &s, NULL); @@ -149,7 +149,7 @@ _public_ int sd_network_get_dhcp_lease(unsigned index, sd_dhcp_lease **ret) { assert_return(index, -EINVAL); assert_return(ret, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, "DHCP_LEASE", &s, NULL); @@ -176,7 +176,7 @@ static int network_get_in_addr(const char *key, unsigned index, struct in_addr * assert_return(addr, -EINVAL); assert_return(addr_size, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, key, &s, NULL); @@ -204,7 +204,7 @@ static int network_get_in6_addr(const char *key, unsigned index, struct in6_addr assert_return(addr, -EINVAL); assert_return(addr_size, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, key, &s, NULL); @@ -230,7 +230,7 @@ static int network_get_boolean(const char *key, unsigned index) { assert_return(index, -EINVAL); - if (asprintf(&p, "/run/systemd/network/links/%u", index) < 0) + if (asprintf(&p, "/run/systemd/netif/links/%u", index) < 0) return -ENOMEM; r = parse_env_file(p, NEWLINE, key, &s, NULL); @@ -256,7 +256,7 @@ _public_ int sd_network_get_ifindices(unsigned **indices) { unsigned n = 0; _cleanup_free_ uid_t *l = NULL; - d = opendir("/run/systemd/network/links/"); + d = opendir("/run/systemd/netif/links/"); if (!d) return -errno; @@ -327,7 +327,7 @@ _public_ int sd_network_monitor_new(const char *category, sd_network_monitor **m return -errno; if (!category || streq(category, "links")) { - k = inotify_add_watch(fd, "/run/systemd/network/links/", IN_MOVED_TO|IN_DELETE); + k = inotify_add_watch(fd, "/run/systemd/netif/links/", IN_MOVED_TO|IN_DELETE); if (k < 0) { safe_close(fd); return -errno; @@ -337,7 +337,7 @@ _public_ int sd_network_monitor_new(const char *category, sd_network_monitor **m } if (!category || streq(category, "leases")) { - k = inotify_add_watch(fd, "/run/systemd/network/leases/", IN_MOVED_TO|IN_DELETE); + k = inotify_add_watch(fd, "/run/systemd/netif/leases/", IN_MOVED_TO|IN_DELETE); if (k < 0) { safe_close(fd); return -errno; diff --git a/tmpfiles.d/systemd.conf b/tmpfiles.d/systemd.conf index 1fce5141e..c5910f8cf 100644 --- a/tmpfiles.d/systemd.conf +++ b/tmpfiles.d/systemd.conf @@ -21,9 +21,9 @@ d /run/systemd/sessions 0755 root root - d /run/systemd/users 0755 root root - d /run/systemd/machines 0755 root root - d /run/systemd/shutdown 0755 root root - -d /run/systemd/network 0755 systemd-network systemd-network - -d /run/systemd/network/links 0755 systemd-network systemd-network - -d /run/systemd/network/leases 0755 systemd-network systemd-network - +d /run/systemd/netif 0755 systemd-network systemd-network - +d /run/systemd/netif/links 0755 systemd-network systemd-network - +d /run/systemd/netif/leases 0755 systemd-network systemd-network - m /var/log/journal 2755 root systemd-journal - - Z /var/log/journal/%m 2755 root systemd-journal - -