aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/linux/skbuff.h7
-rw-r--r--net/core/skbuff.c1
2 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/skbuff.h b/include/linux/skbuff.h
index 72299ef00061..d448a4804aea 100644
--- a/include/linux/skbuff.h
+++ b/include/linux/skbuff.h
@@ -3770,6 +3770,13 @@ static inline void nf_reset_trace(struct sk_buff *skb)
3770#endif 3770#endif
3771} 3771}
3772 3772
3773static inline void ipvs_reset(struct sk_buff *skb)
3774{
3775#if IS_ENABLED(CONFIG_IP_VS)
3776 skb->ipvs_property = 0;
3777#endif
3778}
3779
3773/* Note: This doesn't put any conntrack and bridge info in dst. */ 3780/* Note: This doesn't put any conntrack and bridge info in dst. */
3774static inline void __nf_copy(struct sk_buff *dst, const struct sk_buff *src, 3781static inline void __nf_copy(struct sk_buff *dst, const struct sk_buff *src,
3775 bool copy) 3782 bool copy)
diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index 24656076906d..e140ba49b30a 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -4864,6 +4864,7 @@ void skb_scrub_packet(struct sk_buff *skb, bool xnet)
4864 if (!xnet) 4864 if (!xnet)
4865 return; 4865 return;
4866 4866
4867 ipvs_reset(skb);
4867 skb_orphan(skb); 4868 skb_orphan(skb);
4868 skb->mark = 0; 4869 skb->mark = 0;
4869} 4870}