gre: allow 0 as a legal key value

There is nothing in the standard that says 0 can't be used as a key.
It makes sense to allow it. Also fix typo where ikey was printed for
when printing okey.
This commit is contained in:
Stephen Hemminger 2012-03-19 17:18:49 -07:00
parent 7dd0371222
commit 718165534d
1 changed files with 3 additions and 5 deletions

View File

@ -331,16 +331,14 @@ static void gre_print_opt(struct link_util *lu, FILE *f, struct rtattr *tb[])
if (tb[IFLA_GRE_OFLAGS])
oflags = *(__u16 *)RTA_DATA(tb[IFLA_GRE_OFLAGS]);
if (iflags & GRE_KEY && tb[IFLA_GRE_IKEY] &&
*(__u32 *)RTA_DATA(tb[IFLA_GRE_IKEY])) {
if ((iflags & GRE_KEY) && tb[IFLA_GRE_IKEY]) {
inet_ntop(AF_INET, RTA_DATA(tb[IFLA_GRE_IKEY]), s2, sizeof(s2));
fprintf(f, "ikey %s ", s2);
}
if (oflags & GRE_KEY && tb[IFLA_GRE_OKEY] &&
*(__u32 *)RTA_DATA(tb[IFLA_GRE_OKEY])) {
if ((oflags & GRE_KEY) && tb[IFLA_GRE_OKEY]) {
inet_ntop(AF_INET, RTA_DATA(tb[IFLA_GRE_OKEY]), s2, sizeof(s2));
fprintf(f, "ikey %s ", s2);
fprintf(f, "okey %s ", s2);
}
if (iflags & GRE_SEQ)