MPPE/MPPC kernel module for Linux
Microsoft Point-to-Point Encryption / Compression support
http://www.polbox.com/h/hs001/linux-2.4.29-mppe-mppc-1.3.patch.gz
diff -ruN linux-2.4.29.orig/Documentation/Configure.help linux-2.4.29/Documentation/Configure.help
--- linux-2.4.29.orig/Documentation/Configure.help 2005-02-02 22:18:18.000000000 +0100
+++ linux-2.4.29/Documentation/Configure.help 2005-02-02 22:26:37.000000000 +0100
@@ -9969,6 +9969,28 @@
module; it is called bsd_comp.o and will show up in the directory
modules once you have said "make modules". If unsure, say N.
+Microsoft PPP compression/encryption (MPPC/MPPE)
+CONFIG_PPP_MPPE_MPPC
+ Support for the Microsoft Point-To-Point Compression (RFC2118) and
+ Microsoft Point-To-Point Encryption (RFC3078). These protocols are
+ supported by Microsoft Windows and wide range of "hardware" access
+ servers. MPPE is common protocol in Virtual Private Networks. According
+ to RFC3078, MPPE supports 40, 56 and 128-bit key lengths. Depending on
+ PPP daemon configuration on both ends of the link, following scenarios
+ are possible:
+ - only compression (MPPC) is used,
+ - only encryption (MPPE) is used,
+ - compression and encryption (MPPC+MPPE) are used.
+
+ Please note that Hi/Fn (http://www.hifn.com) holds patent on MPPC so
+ you should check if this patent is valid in your country in order to
+ avoid legal problems.
+
+ For more information please visit http://free.polbox.pl/h/hs001
+
+ To compile this driver as a module, choose M here. The module will
+ be called ppp_mppe_mppc.o.
+
PPP over Ethernet
CONFIG_PPPOE
Support for PPP over Ethernet.
diff -ruN linux-2.4.29.orig/crypto/Config.in linux-2.4.29/crypto/Config.in
--- linux-2.4.29.orig/crypto/Config.in 2005-02-02 22:18:14.000000000 +0100
+++ linux-2.4.29/crypto/Config.in 2005-02-02 22:26:37.000000000 +0100
@@ -11,7 +11,9 @@
"$CONFIG_INET6_AH" = "y" -o \
"$CONFIG_INET6_AH" = "m" -o \
"$CONFIG_INET6_ESP" = "y" -o \
- "$CONFIG_INET6_ESP" = "m" ]; then
+ "$CONFIG_INET6_ESP" = "m" -o \
+ "$CONFIG_PPP_MPPE_MPPC" = "y" -o \
+ "$CONFIG_PPP_MPPE_MPPC" = "m" ]; then
define_bool CONFIG_CRYPTO y
else
bool 'Cryptographic API' CONFIG_CRYPTO
@@ -51,11 +53,24 @@
"$CONFIG_INET6_AH" = "y" -o \
"$CONFIG_INET6_AH" = "m" -o \
"$CONFIG_INET6_ESP" = "y" -o \
- "$CONFIG_INET6_ESP" = "m" ]; then
- define_bool CONFIG_CRYPTO_SHA1 y
- else
- tristate ' SHA1 digest algorithm' CONFIG_CRYPTO_SHA1
+ "$CONFIG_INET6_ESP" = "m" -o \
+ "$CONFIG_PPP_MPPE_MPPC" = "y" -o \
+ "$CONFIG_PPP_MPPE_MPPC" = "m" ]; then
+ if [ "$CONFIG_INET_AH" = "y" -o \
+ "$CONFIG_INET_ESP" = "y" -o \
+ "$CONFIG_INET6_AH" = "y" -o \
+ "$CONFIG_INET6_ESP" = "y" -o \
+ "$CONFIG_PPP_MPPE_MPPC" = "y" ]; then
+ define_tristate CONFIG_CRYPTO_SHA1 y
+ else
+ if [ "$CONFIG_CRYPTO_SHA1" != "y" -a \
+ "$CONFIG_CRYPTO_SHA1" != "m" ]; then
+ define_tristate CONFIG_CRYPTO_SHA1 m
+ fi
+ fi
fi
+ tristate ' SHA1 digest algorithm' CONFIG_CRYPTO_SHA1
+
tristate ' SHA256 digest algorithm' CONFIG_CRYPTO_SHA256
tristate ' SHA384 and SHA512 digest algorithms' CONFIG_CRYPTO_SHA512
tristate ' Whirlpool digest algorithms' CONFIG_CRYPTO_WP512
|