Date: Sun, 21 May 2000 10:28:08 -0500 From: Jonathan Lemon <jlemon@flugsvamp.com> To: Darren Reed <darrenr@reed.wattle.id.au> Cc: jlemon@freebsd.org, freebsd-stable@freebsd.org, ps@freebsd.org, Cy.Schubert@uumail.gov.bc.ca Subject: Re: FTP proxy without translation no longer working? (fwd) Message-ID: <20000521102808.C5468@prism.flugsvamp.com> In-Reply-To: <200005210428.OAA12435@avalon.reed.wattle.id.au> References: <200005210038.e4L0cTx00858@cwsys.cwsent.com> <200005210428.OAA12435@avalon.reed.wattle.id.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, May 21, 2000 at 02:28:30PM +1000, Darren Reed wrote: > Jonathan, > Can you please back these changes out for 4.0_STABLE ? They appear > to interfere with the operation IP Filter. I'm happy for these to on the > head and for there to be work required to get things working again. If I > don't hear/see from you within the next week, I'll assume that you otherwise > are not that concerned and offer to backout the changes myself. Well, instead of backing the changes out, how about we fix the problem instead? I'm not familiar with IPFilter, but I know that there were some initial problems with ipfw, perhaps the problems here are similar. What happens now is that the TCP/UDP layer will place the pseudo checksum in the TCP/UDP header, and set a flag in the mbuf. After the IP layer determines which interface the packet is going out on, it will compute the checksum if: 1. the interface indicates it does not support delayed checksums, and 2. the delayed csum flag is set in the mbuf. If the packet is intercepted/redirected at some point between the upper (TCP) and lower (IP) layers, then it will not have a valid checksum. In this case, there needs to be a small bit of code to force the checksum to be computed if necessary. E.g.: if (m->m_pkthdr.csum_flags & CSUM_DELAY_DATA) { in_delayed_cksum(m); m->m_pkthdr.csum_flags &= ~CSUM_DELAY_DATA; } I don't know where IPFilter hooks into the stack, so I don't know where the appropriate point to put this would be. -- Jonathan To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20000521102808.C5468>