P.ArulChandran writes: > By analyzing the packets from FreeBSD in firebug log, I could see that > unfragmented packets are sent as fragmented packets, with inappropriate > values in the packet header. Even if the packets are fragmented, the > 'lf' field is not set correctly. To comply with Section 4.2 of RFC > 2734, FreeBSD should set 'lf' to correct values to indicate, whether > the packet is fragmented or unfragmented.
I just read the RFC and it looks like we're both at fault. According to the RFC: A RESERVED object has no defined meaning and SHALL be zeroed by its originator or, upon development of a future standard, set to a value specified by such a standard. The recipient of a RESERVED object SHALL NOT check its value. Emperically it would seem that FreeBSD is not zeroing the reserved fields like it should. Further, since zeroing the reserved fields fixes interoperability, it would seem that MacOSX is not ignoring them like it should. It is fun when different implementations collide in the field ;) > In any case, Mac OS X should add more saftey checks to prevent panics > from corrupted packets. Yes, and we should zero the reserved fields. Doing so seems to fix interoperability with unpatched versions of MacOSX. See the attached patch. Thanks for letting me know what was going on and making this so easy to fix.. Drew
fwip.diff
Description: full rfc2734 compliance
_______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"