diff --git a/[refs] b/[refs] index 8bc0403f809d..8bfa6cf54b2d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 385ac2e3f226c09cb71733df1899658e33a7850f +refs/heads/master: 005011211f559113686938c2c252b8ee1ab855b5 diff --git a/trunk/include/net/xfrm.h b/trunk/include/net/xfrm.h index 503d0d294a4c..fe881b6e2bd0 100644 --- a/trunk/include/net/xfrm.h +++ b/trunk/include/net/xfrm.h @@ -1317,4 +1317,9 @@ static inline void xfrm_states_delete(struct xfrm_state **states, int n) } #endif +static inline struct xfrm_state *xfrm_input_state(struct sk_buff *skb) +{ + return skb->sp->xvec[skb->sp->len - 1]; +} + #endif /* _NET_XFRM_H */ diff --git a/trunk/net/xfrm/xfrm_input.c b/trunk/net/xfrm/xfrm_input.c index 8b2b1b59133e..8624cbdb2a1e 100644 --- a/trunk/net/xfrm/xfrm_input.c +++ b/trunk/net/xfrm/xfrm_input.c @@ -109,7 +109,7 @@ int xfrm_input(struct sk_buff *skb, int nexthdr, __be32 spi, int encap_type) /* A negative encap_type indicates async resumption. */ if (encap_type < 0) { async = 1; - x = skb->sp->xvec[skb->sp->len - 1]; + x = xfrm_input_state(skb); seq = XFRM_SKB_CB(skb)->seq; goto resume; }