Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4324a174 authored by Al Viro's avatar Al Viro Committed by David S. Miller
Browse files

[XFRM]: fl_ipsec_spi is net-endian

parent 9916ecb0
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -73,7 +73,7 @@ struct flowi {
			__u8	objname[16]; /* Not zero terminated */
		} dnports;

		__u32		spi;
		__be32		spi;

#ifdef CONFIG_IPV6_MIP6
		struct {
+3 −3
Original line number Diff line number Diff line
@@ -221,7 +221,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl)

		case IPPROTO_ESP:
			if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
				u32 *ehdr = (u32 *)xprth;
				__be32 *ehdr = (__be32 *)xprth;

				fl->fl_ipsec_spi = ehdr[0];
			}
@@ -229,7 +229,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl)

		case IPPROTO_AH:
			if (pskb_may_pull(skb, xprth + 8 - skb->data)) {
				u32 *ah_hdr = (u32*)xprth;
				__be32 *ah_hdr = (__be32*)xprth;

				fl->fl_ipsec_spi = ah_hdr[1];
			}
@@ -237,7 +237,7 @@ _decode_session4(struct sk_buff *skb, struct flowi *fl)

		case IPPROTO_COMP:
			if (pskb_may_pull(skb, xprth + 4 - skb->data)) {
				u16 *ipcomp_hdr = (u16 *)xprth;
				__be16 *ipcomp_hdr = (__be16 *)xprth;

				fl->fl_ipsec_spi = htonl(ntohs(ipcomp_hdr[1]));
			}