diff options
-rw-r--r-- | include/linux/skbuff.h | 7 | ||||
-rw-r--r-- | net/core/skbuff.c | 1 |
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 | ||
3773 | static 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. */ |
3774 | static inline void __nf_copy(struct sk_buff *dst, const struct sk_buff *src, | 3781 | static 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 | } |