View | Details | Raw Unified | Return to bug 144311
Collapse All | Expand All

(-)sys/contrib/pf/net/pf.c (-1 / +2 lines)
Lines 6375-6380 Link Here
6375
	m0->m_pkthdr.csum_flags &= ifp->if_hwassist;
6375
	m0->m_pkthdr.csum_flags &= ifp->if_hwassist;
6376
6376
6377
	if (ntohs(ip->ip_len) <= ifp->if_mtu ||
6377
	if (ntohs(ip->ip_len) <= ifp->if_mtu ||
6378
	    (m0->m_pkthdr.csum_flags & ifp->if_hwassist & CSUM_TSO) != 0 ||
6378
	    (ifp->if_hwassist & CSUM_FRAGMENT &&
6379
	    (ifp->if_hwassist & CSUM_FRAGMENT &&
6379
		((ip->ip_off & htons(IP_DF)) == 0))) {
6380
		((ip->ip_off & htons(IP_DF)) == 0))) {
6380
		/*
6381
		/*
Lines 6449-6455 Link Here
6449
	 * Too large for interface; fragment if possible.
6450
	 * Too large for interface; fragment if possible.
6450
	 * Must be able to put at least 8 bytes per fragment.
6451
	 * Must be able to put at least 8 bytes per fragment.
6451
	 */
6452
	 */
6452
	if (ip->ip_off & htons(IP_DF)) {
6453
	if (ip->ip_off & htons(IP_DF) || (m0->m_pkthdr.csum_flags & CSUM_TSO)) {
6453
		KMOD_IPSTAT_INC(ips_cantfrag);
6454
		KMOD_IPSTAT_INC(ips_cantfrag);
6454
		if (r->rt != PF_DUPTO) {
6455
		if (r->rt != PF_DUPTO) {
6455
#ifdef __FreeBSD__
6456
#ifdef __FreeBSD__

Return to bug 144311