From 73cb1c149dc05abef5ad2814d6193cc33a991082 Mon Sep 17 00:00:00 2001 From: Tom Gundersen Date: Sun, 8 Feb 2015 22:34:53 +0100 Subject: sd-rtnl: fix typesystem for IFLA_AF_SPEC Got this one wrong, it is not a union, just a nested container. --- src/libsystemd/sd-rtnl/rtnl-types.c | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) (limited to 'src/libsystemd') diff --git a/src/libsystemd/sd-rtnl/rtnl-types.c b/src/libsystemd/sd-rtnl/rtnl-types.c index f2d5c8d167..a4c71f3785 100644 --- a/src/libsystemd/sd-rtnl/rtnl-types.c +++ b/src/libsystemd/sd-rtnl/rtnl-types.c @@ -278,15 +278,18 @@ static const struct NLType rtnl_af_spec_inet6_types[IFLA_INET6_MAX + 1] = { [IFLA_INET6_ADDR_GEN_MODE] = { .type = NLA_U8 }, }; -static const NLTypeSystem rtnl_af_spec_type_systems[AF_MAX] = { - [AF_INET6] = { .max = ELEMENTSOF(rtnl_af_spec_inet6_types) - 1, - .types = rtnl_af_spec_inet6_types }, +static const NLTypeSystem rtnl_af_spec_inet6_type_system = { + .max = ELEMENTSOF(rtnl_af_spec_inet6_types) - 1, + .types = rtnl_af_spec_inet6_types, }; -static const NLTypeSystemUnion rtnl_af_spec_type_system_union = { - .num = AF_MAX, - .type_systems = rtnl_af_spec_type_systems, - .match_type = NL_MATCH_PROTOCOL, +static const NLType rtnl_af_spec_types[AF_MAX + 1] = { + [AF_INET6] = { .type = NLA_NESTED, .type_system = &rtnl_af_spec_inet6_type_system }, +}; + +static const NLTypeSystem rtnl_af_spec_type_system = { + .max = ELEMENTSOF(rtnl_af_spec_types) - 1, + .types = rtnl_af_spec_types, }; static const NLType rtnl_link_types[IFLA_MAX + 1 ] = { @@ -323,7 +326,7 @@ static const NLType rtnl_link_types[IFLA_MAX + 1 ] = { [IFLA_VF_PORTS] = { .type = NLA_NESTED }, [IFLA_PORT_SELF] = { .type = NLA_NESTED }, */ - [IFLA_AF_SPEC] = { .type = NLA_NESTED, .type_system_union = &rtnl_af_spec_type_system_union }, + [IFLA_AF_SPEC] = { .type = NLA_NESTED, .type_system = &rtnl_af_spec_type_system }, /* [IFLA_VF_PORTS], [IFLA_PORT_SELF], -- cgit v1.2.3-54-g00ecf