aboutsummaryrefslogtreecommitdiffstats
path: root/net/xfrm/xfrm_output.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/xfrm/xfrm_output.c')
-rw-r--r--net/xfrm/xfrm_output.c13
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
217void 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
217EXPORT_SYMBOL_GPL(xfrm_output); 229EXPORT_SYMBOL_GPL(xfrm_output);
218EXPORT_SYMBOL_GPL(xfrm_inner_extract_output); 230EXPORT_SYMBOL_GPL(xfrm_inner_extract_output);
231EXPORT_SYMBOL_GPL(xfrm_local_error);