Commit 6067b2ba authored by Al Viro's avatar Al Viro Committed by David S. Miller

[XFRM]: xfrm_parse_spi() annotations

Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent e037c39b
...@@ -1004,7 +1004,7 @@ extern void km_policy_expired(struct xfrm_policy *pol, int dir, int hard, u32 pi ...@@ -1004,7 +1004,7 @@ extern void km_policy_expired(struct xfrm_policy *pol, int dir, int hard, u32 pi
extern int km_report(u8 proto, struct xfrm_selector *sel, xfrm_address_t *addr); extern int km_report(u8 proto, struct xfrm_selector *sel, xfrm_address_t *addr);
extern void xfrm_input_init(void); extern void xfrm_input_init(void);
extern int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq); extern int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, __be32 *spi, __be32 *seq);
extern void xfrm_probe_algs(void); extern void xfrm_probe_algs(void);
extern int xfrm_count_auth_supported(void); extern int xfrm_count_auth_supported(void);
......
...@@ -23,7 +23,7 @@ int xfrm4_rcv(struct sk_buff *skb) ...@@ -23,7 +23,7 @@ int xfrm4_rcv(struct sk_buff *skb)
EXPORT_SYMBOL(xfrm4_rcv); EXPORT_SYMBOL(xfrm4_rcv);
static int xfrm4_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq) static int xfrm4_parse_spi(struct sk_buff *skb, u8 nexthdr, __be32 *spi, __be32 *seq)
{ {
switch (nexthdr) { switch (nexthdr) {
case IPPROTO_IPIP: case IPPROTO_IPIP:
...@@ -55,7 +55,7 @@ static inline int xfrm4_rcv_encap_finish(struct sk_buff *skb) ...@@ -55,7 +55,7 @@ static inline int xfrm4_rcv_encap_finish(struct sk_buff *skb)
int xfrm4_rcv_encap(struct sk_buff *skb, __u16 encap_type) int xfrm4_rcv_encap(struct sk_buff *skb, __u16 encap_type)
{ {
int err; int err;
u32 spi, seq; __be32 spi, seq;
struct xfrm_state *xfrm_vec[XFRM_MAX_DEPTH]; struct xfrm_state *xfrm_vec[XFRM_MAX_DEPTH];
struct xfrm_state *x; struct xfrm_state *x;
int xfrm_nr = 0; int xfrm_nr = 0;
......
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
int xfrm6_rcv_spi(struct sk_buff *skb, u32 spi) int xfrm6_rcv_spi(struct sk_buff *skb, u32 spi)
{ {
int err; int err;
u32 seq; __be32 seq;
struct xfrm_state *xfrm_vec[XFRM_MAX_DEPTH]; struct xfrm_state *xfrm_vec[XFRM_MAX_DEPTH];
struct xfrm_state *x; struct xfrm_state *x;
int xfrm_nr = 0; int xfrm_nr = 0;
......
...@@ -46,7 +46,7 @@ EXPORT_SYMBOL(secpath_dup); ...@@ -46,7 +46,7 @@ EXPORT_SYMBOL(secpath_dup);
/* Fetch spi and seq from ipsec header */ /* Fetch spi and seq from ipsec header */
int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq) int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, __be32 *spi, __be32 *seq)
{ {
int offset, offset_seq; int offset, offset_seq;
...@@ -62,7 +62,7 @@ int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq) ...@@ -62,7 +62,7 @@ int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq)
case IPPROTO_COMP: case IPPROTO_COMP:
if (!pskb_may_pull(skb, sizeof(struct ip_comp_hdr))) if (!pskb_may_pull(skb, sizeof(struct ip_comp_hdr)))
return -EINVAL; return -EINVAL;
*spi = htonl(ntohs(*(u16*)(skb->h.raw + 2))); *spi = htonl(ntohs(*(__be16*)(skb->h.raw + 2)));
*seq = 0; *seq = 0;
return 0; return 0;
default: default:
...@@ -72,8 +72,8 @@ int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq) ...@@ -72,8 +72,8 @@ int xfrm_parse_spi(struct sk_buff *skb, u8 nexthdr, u32 *spi, u32 *seq)
if (!pskb_may_pull(skb, 16)) if (!pskb_may_pull(skb, 16))
return -EINVAL; return -EINVAL;
*spi = *(u32*)(skb->h.raw + offset); *spi = *(__be32*)(skb->h.raw + offset);
*seq = *(u32*)(skb->h.raw + offset_seq); *seq = *(__be32*)(skb->h.raw + offset_seq);
return 0; return 0;
} }
EXPORT_SYMBOL(xfrm_parse_spi); EXPORT_SYMBOL(xfrm_parse_spi);
......
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