NLA_PUT_U32(skb, IFLA_GRE_LINK, p->link);
        NLA_PUT_BE16(skb, IFLA_GRE_IFLAGS, p->i_flags);
        NLA_PUT_BE16(skb, IFLA_GRE_OFLAGS, p->o_flags);
-       NLA_PUT_BE32(skb, IFLA_GRE_IFLAGS, p->i_flags);
-       NLA_PUT_BE32(skb, IFLA_GRE_OFLAGS, p->o_flags);
+       NLA_PUT_BE32(skb, IFLA_GRE_IKEY, p->i_key);
+       NLA_PUT_BE32(skb, IFLA_GRE_OKEY, p->o_key);
        NLA_PUT(skb, IFLA_GRE_LOCAL, 4, &p->iph.saddr);
        NLA_PUT(skb, IFLA_GRE_REMOTE, 4, &p->iph.daddr);
        NLA_PUT_U8(skb, IFLA_GRE_TTL, p->iph.ttl);