]> git.baikalelectronics.ru Git - kernel.git/commit
PPTP: PPP over IPv4 (Point-to-Point Tunneling Protocol)
authorDmitry Kozlov <xeb@mail.ru>
Sun, 22 Aug 2010 06:05:39 +0000 (23:05 -0700)
committerDavid S. Miller <davem@davemloft.net>
Sun, 22 Aug 2010 06:05:39 +0000 (23:05 -0700)
commit0a9c6f21ecb80675bf930088eb36c679645bc5c9
tree9bfe790d4a8b63b0e6653388da73dfd777eea8ff
parentcb4fb6d4f2c5ee82fdeff41c7e6f109d473c18d4
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>
MAINTAINERS
drivers/net/Kconfig
drivers/net/Makefile
drivers/net/pptp.c [new file with mode: 0644]
include/linux/if_pppox.h
include/net/gre.h [new file with mode: 0644]
net/ipv4/Kconfig
net/ipv4/Makefile
net/ipv4/gre.c [new file with mode: 0644]
net/ipv4/ip_gre.c