Skip to content

Commit 00959ad

Browse files
xebddavem330
authored andcommitted
PPTP: PPP over IPv4 (Point-to-Point Tunneling Protocol)
PPP: introduce "pptp" module which implements point-to-point tunneling protocol using pppox framework NET: introduce the "gre" module for demultiplexing GRE packets on version criteria (required to pptp and ip_gre may coexists) NET: ip_gre: update to use the "gre" module This patch introduces then pptp support to the linux kernel which dramatically speeds up pptp vpn connections and decreases cpu usage in comparison of existing user-space implementation (poptop/pptpclient). There is accel-pptp project (https://sourceforge.net/projects/accel-pptp/) to utilize this module, it contains plugin for pppd to use pptp in client-mode and modified pptpd (poptop) to build high-performance pptp NAS. There was many changes from initial submitted patch, most important are: 1. using rcu instead of read-write locks 2. using static bitmap instead of dynamically allocated 3. using vmalloc for memory allocation instead of BITS_PER_LONG + __get_free_pages 4. fixed many coding style issues Thanks to Eric Dumazet. Signed-off-by: Dmitry Kozlov <xeb@mail.ru> Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent 1003489 commit 00959ad

File tree

10 files changed

+971
-24
lines changed

10 files changed

+971
-24
lines changed

MAINTAINERS

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6528,6 +6528,20 @@ M: "Maciej W. Rozycki" <macro@linux-mips.org>
65286528
S: Maintained
65296529
F: drivers/serial/zs.*
65306530

6531+
GRE DEMULTIPLEXER DRIVER
6532+
M: Dmitry Kozlov <xeb@mail.ru>
6533+
L: netdev@vger.kernel.org
6534+
S: Maintained
6535+
F: net/ipv4/gre.c
6536+
F: include/net/gre.h
6537+
6538+
PPTP DRIVER
6539+
M: Dmitry Kozlov <xeb@mail.ru>
6540+
L: netdev@vger.kernel.org
6541+
S: Maintained
6542+
F: drivers/net/pptp.c
6543+
W: http://sourceforge.net/projects/accel-pptp
6544+
65316545
THE REST
65326546
M: Linus Torvalds <torvalds@linux-foundation.org>
65336547
L: linux-kernel@vger.kernel.org

drivers/net/Kconfig

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3192,6 +3192,17 @@ config PPPOE
31923192
which contains instruction on how to use this driver (under
31933193
the heading "Kernel mode PPPoE").
31943194

3195+
config PPTP
3196+
tristate "PPP over IPv4 (PPTP) (EXPERIMENTAL)"
3197+
depends on EXPERIMENTAL && PPP && NET_IPGRE_DEMUX
3198+
help
3199+
Support for PPP over IPv4.(Point-to-Point Tunneling Protocol)
3200+
3201+
This driver requires pppd plugin to work in client mode or
3202+
modified pptpd (poptop) to work in server mode.
3203+
See http://accel-pptp.sourceforge.net/ for information how to
3204+
utilize this module.
3205+
31953206
config PPPOATM
31963207
tristate "PPP over ATM"
31973208
depends on ATM && PPP

drivers/net/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,7 @@ obj-$(CONFIG_PPP_BSDCOMP) += bsd_comp.o
162162
obj-$(CONFIG_PPP_MPPE) += ppp_mppe.o
163163
obj-$(CONFIG_PPPOE) += pppox.o pppoe.o
164164
obj-$(CONFIG_PPPOL2TP) += pppox.o
165+
obj-$(CONFIG_PPTP) += pppox.o pptp.o
165166

166167
obj-$(CONFIG_SLIP) += slip.o
167168
obj-$(CONFIG_SLHC) += slhc.o

0 commit comments

Comments
 (0)