diff options
author | Matt Domsch <Matt_Domsch@dell.com> | 2005-11-08 09:40:47 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2005-11-08 09:40:47 -0800 |
commit | b3f9b92a6ec1a9a5e4b4b36e484f2f62cc73277c (patch) | |
tree | 7ca8e019573362620638e14e32bb519770ee6945 /include/linux/ppp-comp.h | |
parent | 6722e78c90054101e6797d5944cdc81af9897a0a (diff) | |
download | blackbird-op-linux-b3f9b92a6ec1a9a5e4b4b36e484f2f62cc73277c.tar.gz blackbird-op-linux-b3f9b92a6ec1a9a5e4b4b36e484f2f62cc73277c.zip |
[PPP]: add PPP MPPE encryption module
From: Matt Domsch <Matt_Domsch@dell.com>
The patch below implements the Microsoft Point-to-Point Encryption method
as a PPP compressor/decompressor. This is necessary for Linux clients and
servers to interoperate with Microsoft Point-to-Point Tunneling Protocol
(PPTP) servers (either Microsoft PPTP servers or the poptop project) which
use MPPE to encrypt data when creating a VPN.
This patch differs from the kernel_ppp_mppe DKMS pacakge at
pptpclient.sourceforge.net by utilizing the kernel crypto routines rather
than providing its own SHA1 and arcfour implementations.
Minor changes to ppp_generic.c try to prevent a link from disabling
compression (in our case, the encryption) after it has started using
compression (encryption).
Feedback to <pptpclient-devel@lists.sourceforge.net> please.
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Cc: James Cameron <james.cameron@hp.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/linux/ppp-comp.h')
-rw-r--r-- | include/linux/ppp-comp.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/ppp-comp.h b/include/linux/ppp-comp.h index 7227e653b3be..e86a7a5cf355 100644 --- a/include/linux/ppp-comp.h +++ b/include/linux/ppp-comp.h @@ -111,6 +111,8 @@ struct compressor { /* Used in locking compressor modules */ struct module *owner; + /* Extra skb space needed by the compressor algorithm */ + unsigned int comp_extra; }; /* @@ -191,6 +193,13 @@ struct compressor { #define DEFLATE_CHK_SEQUENCE 0 /* + * Definitions for MPPE. + */ + +#define CI_MPPE 18 /* config option for MPPE */ +#define CILEN_MPPE 6 /* length of config option */ + +/* * Definitions for other, as yet unsupported, compression methods. */ |