From 8abd60c18b77ec99b390d6c1dcbe616c11f5e01b Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Mon, 18 Feb 2019 07:28:02 +0100 Subject: [PATCH] netlink: fix routing-policy-rule netlink type for FRA_GOTO/FRA_UNUSED2 - RTA_OIF has no business in the routing-rule policy. It is numerical identical to FRA_GOTO. Fix using the correct enum value. Note that RTA_OIF/FRA_GOTO was not used by networkd, and the type was already correct at uint32. So, there is no change in behavior. - RTA_GATEWAY also does not belong to the routing-rules. It is numerical identical to FRA_UNUSED2. Obviously, that value is unused as well, so there is no actual change in behavior either. In particular that is because: - kernel would not send messages with FRA_UNUSED2 attribute. - networkd would not try to parse/send RTA_GATEWAY/FRA_UNUSED2 attributes. Fixes: bce67bbee359eec19e6778619b6651100a1c1477 --- src/libsystemd/sd-netlink/netlink-types.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/libsystemd/sd-netlink/netlink-types.c b/src/libsystemd/sd-netlink/netlink-types.c index e88c5b5..3fec237 100644 --- a/src/libsystemd/sd-netlink/netlink-types.c +++ b/src/libsystemd/sd-netlink/netlink-types.c @@ -651,8 +651,7 @@ static const NLType rtnl_routing_policy_rule_types[] = { [FRA_DST] = { .type = NETLINK_TYPE_IN_ADDR }, [FRA_SRC] = { .type = NETLINK_TYPE_IN_ADDR }, [FRA_IIFNAME] = { .type = NETLINK_TYPE_STRING }, - [RTA_OIF] = { .type = NETLINK_TYPE_U32 }, - [RTA_GATEWAY] = { .type = NETLINK_TYPE_IN_ADDR }, + [FRA_GOTO] = { .type = NETLINK_TYPE_U32 }, [FRA_PRIORITY] = { .type = NETLINK_TYPE_U32 }, [FRA_FWMARK] = { .type = NETLINK_TYPE_U32 }, [FRA_FLOW] = { .type = NETLINK_TYPE_U32 }, -- 2.7.4