When we are sending IP fragments, update ip pointers in IP_PROBE() for

each fragment.

MFC after:	1 week
This commit is contained in:
Andrey V. Elsukov 2016-12-29 19:57:46 +00:00
parent 49fe3b378b
commit 2e77d270c1
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=310783
2 changed files with 5 additions and 3 deletions

View File

@ -400,8 +400,9 @@ ip_tryforward(struct mbuf *m)
*/
m_clrprotoflags(m);
IP_PROBE(send, NULL, NULL, ip, nh.nh_ifp,
ip, NULL);
IP_PROBE(send, NULL, NULL,
mtod(m, struct ip *), nh.nh_ifp,
mtod(m, struct ip *), NULL);
/* XXX: we can use cached route here */
error = (*nh.nh_ifp->if_output)(nh.nh_ifp, m,
(struct sockaddr *)&dst, NULL);

View File

@ -696,7 +696,8 @@ ip_output(struct mbuf *m, struct mbuf *opt, struct route *ro, int flags,
*/
m_clrprotoflags(m);
IP_PROBE(send, NULL, NULL, ip, ifp, ip, NULL);
IP_PROBE(send, NULL, NULL, mtod(m, struct ip *), ifp,
mtod(m, struct ip *), NULL);
error = (*ifp->if_output)(ifp, m,
(const struct sockaddr *)gw, ro);
} else