diff options
Diffstat (limited to 'net/xfrm/xfrm_output.c')
-rw-r--r-- | net/xfrm/xfrm_output.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/net/xfrm/xfrm_output.c b/net/xfrm/xfrm_output.c index eb4a84288648..6f5fc612b162 100644 --- a/net/xfrm/xfrm_output.c +++ b/net/xfrm/xfrm_output.c | |||
@@ -214,5 +214,18 @@ int xfrm_inner_extract_output(struct xfrm_state *x, struct sk_buff *skb) | |||
214 | return inner_mode->afinfo->extract_output(x, skb); | 214 | return inner_mode->afinfo->extract_output(x, skb); |
215 | } | 215 | } |
216 | 216 | ||
217 | void xfrm_local_error(struct sk_buff *skb, int mtu) | ||
218 | { | ||
219 | struct xfrm_state_afinfo *afinfo; | ||
220 | |||
221 | afinfo = xfrm_state_get_afinfo(skb->sk->sk_family); | ||
222 | if (!afinfo) | ||
223 | return; | ||
224 | |||
225 | afinfo->local_error(skb, mtu); | ||
226 | xfrm_state_put_afinfo(afinfo); | ||
227 | } | ||
228 | |||
217 | EXPORT_SYMBOL_GPL(xfrm_output); | 229 | EXPORT_SYMBOL_GPL(xfrm_output); |
218 | EXPORT_SYMBOL_GPL(xfrm_inner_extract_output); | 230 | EXPORT_SYMBOL_GPL(xfrm_inner_extract_output); |
231 | EXPORT_SYMBOL_GPL(xfrm_local_error); | ||