Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/sys/netinet/ip_input.c,v retrieving revision 1.30.4.3 retrieving revision 1.31 diff -u -p -r1.30.4.3 -r1.31 --- src/sys/netinet/ip_input.c 1996/12/11 02:11:08 1.30.4.3 +++ src/sys/netinet/ip_input.c 1996/07/10 18:13:39 1.31 @@ -1,4 +1,4 @@ -/* $NetBSD: ip_input.c,v 1.30.4.3 1996/12/11 02:11:08 mycroft Exp $ */ +/* $NetBSD: ip_input.c,v 1.31 1996/07/10 18:13:39 cgd Exp $ */ /* * Copyright (c) 1982, 1986, 1988, 1993 @@ -345,7 +345,7 @@ ours: * if the packet was previously fragmented, * but it's not worth the time; just let them time out.) */ - if (ip->ip_off & ~(IP_DF|IP_RF)) { + if (ip->ip_off &~ IP_DF) { if (m->m_flags & M_EXT) { /* XXX */ if ((m = m_pullup(m, sizeof (struct ip))) == 0) { ipstat.ips_toosmall++; @@ -531,16 +531,10 @@ insert: return (0); /* - * Reassembly is complete. Check for a bogus message size and - * concatenate fragments. + * Reassembly is complete; concatenate fragments. */ q = fp->ipq_fragq.lh_first; ip = q->ipqe_ip; - if ((next + (ip->ip_hl << 2)) > IP_MAXPACKET) { - ipstat.ips_toolong++; - ip_freef(fp); - return (0); - } m = dtom(q->ipqe_ip); t = m->m_next; m->m_next = 0; @@ -920,7 +914,7 @@ ip_srcroute() *(mtod(m, struct in_addr *)) = *p--; #ifdef DIAGNOSTIC if (ipprintfs) - printf(" hops %x", ntohl(mtod(m, struct in_addr *)->s_addr)); + printf(" hops %lx", ntohl(mtod(m, struct in_addr *)->s_addr)); #endif /* @@ -940,7 +934,7 @@ ip_srcroute() while (p >= ip_srcrt.route) { #ifdef DIAGNOSTIC if (ipprintfs) - printf(" %x", ntohl(q->s_addr)); + printf(" %lx", ntohl(q->s_addr)); #endif *q++ = *p--; } @@ -950,7 +944,7 @@ ip_srcroute() *q = ip_srcrt.dst; #ifdef DIAGNOSTIC if (ipprintfs) - printf(" %x\n", ntohl(q->s_addr)); + printf(" %lx\n", ntohl(q->s_addr)); #endif return (m); } @@ -1056,10 +1050,10 @@ ip_forward(m, srcrt) } /* - * Save at most 68 bytes of the packet in case + * Save at most 64 bytes of the packet in case * we need to generate an ICMP message to the src. */ - mcopy = m_copy(m, 0, imin((int)ip->ip_len, 68)); + mcopy = m_copy(m, 0, imin((int)ip->ip_len, 64)); /* * If forwarding packet using same interface that it came in on,