Date: Sat, 13 Jan 2001 20:53:31 +0100 From: Thomas Moestl <tmoestl@gmx.net> To: freebsd-isdn@freebsd.org Subject: [PATCH] isppp with uncompressed VJ packets broken in -CURRENT Message-ID: <20010113205331.A2143@crow.dom2ip.de>
next in thread | raw e-mail | index | archive | help
--IS0zKkzwUGydFO0o Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, it seems that a commit to i4b/drivers/i4b_ispppsubr.c on 2000-01-12 has broken the handling of uncompressed VJ packets. The attached diff should hopefully fix that. From what I can tell, the second call to sl_uncompress_tcp_core needs the TYPE_UNCOMPRESSED_TCP flag (as it was before the commit). Additionally, sl_uncompress_core may return 0 if the packet was uncompressed previously, so this is no error condition. The first call (not visible in the diff) is IMHO correct as it is, because the 0 return value should not happen. The second call should always return 0, so I check explicitely for it (other cases are not handled anyway). Could someone please review/comment/commit this? - thomas --IS0zKkzwUGydFO0o Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="isdn-kernel2.diff" *** sys/i4b/driver/i4b_ispppsubr.c.orig Sat Jan 13 12:30:20 2001 --- sys/i4b/driver/i4b_ispppsubr.c Sat Jan 13 20:08:11 2001 *************** *** 580,587 **** int hlen, vjlen; if ((vjlen = sl_uncompress_tcp_core(m->m_data, ! m->m_len, m->m_len, TYPE_COMPRESSED_TCP, ! &sp->pp_comp, &iphdr, &hlen)) <= 0) goto drop; schednetisr (NETISR_IP); --- 580,587 ---- int hlen, vjlen; if ((vjlen = sl_uncompress_tcp_core(m->m_data, ! m->m_len, m->m_len, TYPE_UNCOMPRESSED_TCP, ! &sp->pp_comp, &iphdr, &hlen)) != 0) goto drop; schednetisr (NETISR_IP); --IS0zKkzwUGydFO0o-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-isdn" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010113205331.A2143>