Commit aa285b17 authored by Timo Teräs's avatar Timo Teräs Committed by David S. Miller

xfrm: fix gre key endianess

fl->fl_gre_key is network byte order contrary to fl->fl_icmp_*.
Make xfrm_flowi_{s|d}port return network byte order values for gre
key too.
Signed-off-by: default avatarTimo Teräs <timo.teras@iki.fi>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 6a632625
...@@ -806,7 +806,7 @@ __be16 xfrm_flowi_sport(struct flowi *fl) ...@@ -806,7 +806,7 @@ __be16 xfrm_flowi_sport(struct flowi *fl)
port = htons(fl->fl_mh_type); port = htons(fl->fl_mh_type);
break; break;
case IPPROTO_GRE: case IPPROTO_GRE:
port = htonl(fl->fl_gre_key) >> 16; port = htons(ntohl(fl->fl_gre_key) >> 16);
break; break;
default: default:
port = 0; /*XXX*/ port = 0; /*XXX*/
...@@ -830,7 +830,7 @@ __be16 xfrm_flowi_dport(struct flowi *fl) ...@@ -830,7 +830,7 @@ __be16 xfrm_flowi_dport(struct flowi *fl)
port = htons(fl->fl_icmp_code); port = htons(fl->fl_icmp_code);
break; break;
case IPPROTO_GRE: case IPPROTO_GRE:
port = htonl(fl->fl_gre_key) & 0xffff; port = htons(ntohl(fl->fl_gre_key) & 0xffff);
break; break;
default: default:
port = 0; /*XXX*/ port = 0; /*XXX*/
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment