summaryrefslogtreecommitdiff
path: root/net
diff options
context:
space:
mode:
authorcube <cube@pkgsrc.org>2003-12-01 15:07:03 +0000
committercube <cube@pkgsrc.org>2003-12-01 15:07:03 +0000
commite299dd8c0e32806a6f7aa43b95106ce8f1c7364b (patch)
treea161092a1625afef052f96b3275385796d87156c /net
parent3ae31411e05b86dbdcf6c478527552609f03d2d0 (diff)
downloadpkgsrc-e299dd8c0e32806a6f7aa43b95106ce8f1c7364b.tar.gz
Comment out the code that returned DECOMP_ERROR when an out-of-order packet
is received. It is necessary because in the case of a dropped packet, while it is understandable to return DECOMP_ERROR, it has the side effect of making NetBSD desactivate the MPPE decompressor on the PPP interface. A comment in net/if_ppp.c mentions a patent that would prohibit an automatic failure recovery in that case, so it would need MPPE-specific code in net/if_ppp.c, which of course is impossible since the MPPE decompressor is only available as a LKM. Just ignoring the problem is a bit of a hack, but is a much more nicer solution that what I used when I first encountered the issue. Problem reported and patch provided in PR 23593, by Yoshitaka Tokugawa.
Diffstat (limited to 'net')
-rw-r--r--net/ppp-mppe/distinfo4
-rw-r--r--net/ppp-mppe/patches/patch-bt15
2 files changed, 13 insertions, 6 deletions
diff --git a/net/ppp-mppe/distinfo b/net/ppp-mppe/distinfo
index 22d73b4c510..a85fb9ae3e6 100644
--- a/net/ppp-mppe/distinfo
+++ b/net/ppp-mppe/distinfo
@@ -1,4 +1,4 @@
-$NetBSD: distinfo,v 1.3 2002/03/07 07:41:39 jmc Exp $
+$NetBSD: distinfo,v 1.4 2003/12/01 15:07:03 cube Exp $
SHA1 (ppp-2.3.9.tar.gz) = ef5ef4686f6738193ec88972902f9a5a6fb8f5dd
Size (ppp-2.3.9.tar.gz) = 768540 bytes
@@ -42,7 +42,7 @@ SHA1 (patch-bp) = c606c83604b588e1574cdb96f035768df50aca53
SHA1 (patch-bq) = 2e0ea29dcba6571a764f8c1d9019d5e9fa9ff8e0
SHA1 (patch-br) = 3db283aba2c4f41db05cc5b327383cb5f381a7b7
SHA1 (patch-bs) = 41cfdbf71044e7f1988f26b56ee35f9501ff054f
-SHA1 (patch-bt) = ca2b43c28de0d59d188231a0219a6b19948b0d37
+SHA1 (patch-bt) = 2387aacd54aa0a5dea1cc0cdeeaaeeb6956d0328
SHA1 (patch-bu) = f8ed281a92ee7dd9e733c22b54d6e63c7da905b3
SHA1 (patch-bv) = 4ecb556fa6e8e25d0535a98af122634aae6d5071
SHA1 (patch-bw) = b1d045d0d4d7e0e6bfe5ce44b976b26c2a9f8416
diff --git a/net/ppp-mppe/patches/patch-bt b/net/ppp-mppe/patches/patch-bt
index 769932e3abe..428a331a5b2 100644
--- a/net/ppp-mppe/patches/patch-bt
+++ b/net/ppp-mppe/patches/patch-bt
@@ -1,8 +1,8 @@
-$NetBSD: patch-bt,v 1.1.1.1 1999/10/08 04:34:43 dbj Exp $
+$NetBSD: patch-bt,v 1.2 2003/12/01 15:07:03 cube Exp $
---- /dev/null Mon Sep 27 01:09:07 1999
-+++ netbsd-1.4/ppp_mppe.c Mon Sep 27 02:11:53 1999
-@@ -0,0 +1,785 @@
+--- netbsd-1.4/ppp_mppe.c.orig 2003-12-01 10:04:24.000000000 +0100
++++ netbsd-1.4/ppp_mppe.c
+@@ -0,0 +1,792 @@
+/* NetBSD
+ *
+ * taken from: FILEVERSION 9906180
@@ -637,9 +637,16 @@ $NetBSD: patch-bt,v 1.1.1.1 1999/10/08 04:34:43 dbj Exp $
+ mppe_update_count(state);
+ }
+
++ /*
++ * Let the packet in anyway. It allows the tunnel to stay alive
++ * whereas returning DECOMP_ERROR would disable the MPPE
++ * decompressor in the kernel for that connection.
++ */
++#if 0
+ mppe_update_count(state);
+
+ return DECOMP_ERROR;
++#endif
+ }
+
+ if(!(MPPE_BITS(ibuf) & MPPE_BIT_ENCRYPTED)) {