summaryrefslogtreecommitdiffstats
path: root/src/network/networkd-radv.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/network/networkd-radv.c')
-rw-r--r--src/network/networkd-radv.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/network/networkd-radv.c b/src/network/networkd-radv.c
index 8cff0237a9..a284e2c47e 100644
--- a/src/network/networkd-radv.c
+++ b/src/network/networkd-radv.c
@@ -645,6 +645,22 @@ int link_request_radv(Link *link) {
return 0;
}
+int link_drop_radv_config(Link *link, Network *network) {
+ int ret = 0;
+
+ assert(link);
+ assert(network);
+
+ if (!link_radv_enabled(link))
+ return 0;
+
+ // FIXME: check detailed settings and do not stop if nothing changed.
+ // FIXME: save dynamic prefixes acquired by DHCP-PD.
+ ret = sd_radv_stop(link->radv);
+ link->radv = sd_radv_unref(link->radv);
+ return ret;
+}
+
int radv_start(Link *link) {
int r;