]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
sd-netlink: introduce sd_rtnl_message_nexthop_get_flags()
authorYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 12 Nov 2021 06:18:01 +0000 (15:18 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Fri, 12 Nov 2021 23:16:06 +0000 (08:16 +0900)
src/libsystemd/sd-netlink/netlink-message-rtnl.c
src/systemd/sd-netlink.h

index 9e8ec397e9b67656e0bb52c94d9aae05056e04c3..d15ca06aa85aa0b5747b853c62647d5c4239b7ad 100644 (file)
@@ -321,6 +321,20 @@ int sd_rtnl_message_nexthop_set_flags(sd_netlink_message *m, uint8_t flags) {
         return 0;
 }
 
+int sd_rtnl_message_nexthop_get_flags(sd_netlink_message *m, uint8_t *ret) {
+        struct nhmsg *nhm;
+
+        assert_return(m, -EINVAL);
+        assert_return(m->hdr, -EINVAL);
+        assert_return(rtnl_message_type_is_nexthop(m->hdr->nlmsg_type), -EINVAL);
+        assert_return(ret, -EINVAL);
+
+        nhm = NLMSG_DATA(m->hdr);
+        *ret = nhm->nh_flags;
+
+        return 0;
+}
+
 int sd_rtnl_message_nexthop_get_family(sd_netlink_message *m, uint8_t *family) {
         struct nhmsg *nhm;
 
index 66a1bb6a33f7f502eeb0410419c3994d426b2043..c166cc167164b5ced70ac4028191bff412dad872 100644 (file)
@@ -172,6 +172,7 @@ int sd_rtnl_message_route_get_type(sd_netlink_message *m, unsigned char *type);
 
 int sd_rtnl_message_new_nexthop(sd_netlink *rtnl, sd_netlink_message **ret, uint16_t nlmsg_type, int nh_family, unsigned char nh_protocol);
 int sd_rtnl_message_nexthop_set_flags(sd_netlink_message *m, uint8_t flags);
+int sd_rtnl_message_nexthop_get_flags(sd_netlink_message *m, uint8_t *ret);
 int sd_rtnl_message_nexthop_get_family(sd_netlink_message *m, uint8_t *family);
 int sd_rtnl_message_nexthop_get_protocol(sd_netlink_message *m, uint8_t *protocol);