NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: kern/41074: ipnat kills NFS connections
I wrote:
> > >Synopsis: ipnat kills NFS connections
:
> "options NFS_BOOT_RWSIZE=1024" on the client kernel or using
> NFS via TCP seems to work, so ipnat might have some bugs around
> fragmented UDP packets?
It looks ipnat incorrectly blocks fragmented UDP packets.
The following ugly patch makes 8k UDP NFS work again.
---
Index: ip_nat.c
===================================================================
RCS file: /cvsroot/src/sys/dist/ipf/netinet/ip_nat.c,v
retrieving revision 1.38
diff -u -r1.38 ip_nat.c
--- ip_nat.c 26 Jul 2008 19:44:28 -0000 1.38
+++ ip_nat.c 6 Apr 2009 17:41:04 -0000
@@ -3841,7 +3841,7 @@
* If there is no current entry in the nat table for this IP#,
* create one for it (if there is a matching rule).
*/
- if ((fin->fin_off != 0) && (fin->fin_flx & FI_TCPUDP)) {
+ if ((fin->fin_off != 0) && (fin->fin_flx & FI_TCPUDP) && 0) {
natfailed = -1;
goto nonatfrag;
}
@@ -4150,7 +4150,7 @@
} else {
u_32_t hv, msk, rmsk;
- if ((fin->fin_off != 0) && (fin->fin_flx & FI_TCPUDP)) {
+ if ((fin->fin_off != 0) && (fin->fin_flx & FI_TCPUDP) && 0) {
natfailed = -1;
goto nonatfrag;
}
---
Izumi Tsutsui
Home |
Main Index |
Thread Index |
Old Index