Page MenuHomeFreeBSD

D32807.1775834617.diff
No OneTemporary

Size
862 B
Referenced Files
None
Subscribers
None

D32807.1775834617.diff

diff --git a/sys/netinet/ip_divert.c b/sys/netinet/ip_divert.c
--- a/sys/netinet/ip_divert.c
+++ b/sys/netinet/ip_divert.c
@@ -227,6 +227,25 @@
m->m_pkthdr.csum_flags &= ~CSUM_SCTP;
}
#endif
+#ifdef INET6
+ if (m->m_pkthdr.csum_flags & CSUM_DELAY_DATA_IPV6) {
+ m = mb_unmapped_to_ext(m);
+ if (m == NULL)
+ return;
+ in6_delayed_cksum(m, m->m_pkthdr.len -
+ sizeof(struct ip6_hdr), sizeof(struct ip6_hdr));
+ m->m_pkthdr.csum_flags &= ~CSUM_DELAY_DATA_IPV6;
+ }
+#if defined(SCTP) || defined(SCTP_SUPPORT)
+ if (m->m_pkthdr.csum_flags & CSUM_SCTP_IPV6) {
+ m = mb_unmapped_to_ext(m);
+ if (m == NULL)
+ return;
+ sctp_delayed_cksum(m, sizeof(struct ip6_hdr));
+ m->m_pkthdr.csum_flags &= ~CSUM_SCTP_IPV6;
+ }
+#endif
+#endif /* INET6 */
bzero(&divsrc, sizeof(divsrc));
divsrc.sin_len = sizeof(divsrc);
divsrc.sin_family = AF_INET;

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 10, 3:23 PM (13 h, 20 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28316586
Default Alt Text
D32807.1775834617.diff (862 B)

Event Timeline