]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - src/libsystemd-network/sd-radv.c
sd-radv: allow to configure reachable time in RA header
[thirdparty/systemd.git] / src / libsystemd-network / sd-radv.c
index f6f30ce3197764f74e521d4135de82d4fa808246..a30a805271bd3fa2934e3370bd696ba2a3ccc0ab 100644 (file)
@@ -163,6 +163,7 @@ static int radv_send_router(sd_radv *ra, const struct in6_addr *dst) {
         struct nd_router_advert adv = {
                 .nd_ra_type = ND_ROUTER_ADVERT,
                 .nd_ra_router_lifetime = usec_to_be16_sec(ra->lifetime_usec),
+                .nd_ra_reachable = usec_to_be32_msec(ra->reachable_usec),
                 .nd_ra_retransmit = usec_to_be32_msec(ra->retransmit_usec),
         };
         struct {
@@ -538,6 +539,13 @@ int sd_radv_set_hop_limit(sd_radv *ra, uint8_t hop_limit) {
         return 0;
 }
 
+int sd_radv_set_reachable_time(sd_radv *ra, uint64_t usec) {
+        assert_return(ra, -EINVAL);
+
+        ra->reachable_usec = usec;
+        return 0;
+}
+
 int sd_radv_set_retransmit(sd_radv *ra, uint64_t usec) {
         assert_return(ra, -EINVAL);