lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-Id: <200705261746.l4QHkO3x001704@quickie.katalix.com>
Date:	Sat, 26 May 2007 18:46:24 +0100
From:	James Chapman <jchapman@...alix.com>
To:	netdev@...r.kernel.org
Subject: resend [PATCH 0/5 2.6.21] L2TP: Introduce PPP-over-L2TP driver

On Patrick's request, I'm resending this patch set. There are no
changes since they were posted 3 weeks ago. Please review. Thanks.


This patch set adds a driver for PPP over L2TP. Patches to follow.

The following changes have been made since the previous version
submitted 23-APR-07.

- Hold list lock while processing reorder queue in
  pppol2tp_recv_dequeue().

- Fix more __be type annotations.

- Add a new UDP encapsulation socket type for L2TP (new patch). Modify
  driver receive path so that it hooks on udp_encap_rcv() rather than
  overload the socket's sk_data_ready() for skb reception.

- Remove pppol2tp_fget() and friends. Previous code needed to find the
  tunnel fd from a context other than the one that created the
  socket. I now use the PPPoX management socket creation (which is
  done by the same process that creates the UDP socket, i.e. l2tpd) to
  derive the socket of the UDP tunnel using sockfd_lookup().

- Reorder some functions in proc file handling code to avoid needing
  function prototypes.

- Remove code that sorted entries which are output in
  /proc/net/pppol2tp. Output now shows tunnels and sessions unordered.

- Remove stupid userland conditional includes from the if_pppox.h
  changes.

- Remove skb_queue_walk_safe and pppox-autoload patches from the
  series since they have now been applied.

- Add in-kernel documentation (new patch).

- Rebased to 2.6.21.

The code still uses sk->sk_destruct() on the tunnel socket to cleanup
internal contexts if the tunnel UDP socket is destroyed.


About this patch series:

The implementation uses the existing PPPoX subsystem that is currently
used only by PPPoE. A userspace daemon handles all L2TP control
protocol messages, while a PPPoX socket carries user data. The system
architecture is similar to PPPoE, where a pppd plugin uses the PPPoX
socket to send/receive PPP frames over an L2TP tunnel. PPP control
frames are delivered to pppd while data frames are handled entirely by
the kernel.

There are 5 patches in the series:-

1 - Introduce new UDP encapsulation type for L2TP.

2 - API changes for L2TP. Adds definitions for L2TP in existing headers.

3 - pppol2tp driver core. New code. Requires patches 1, 2, and the 
    recently applied skb_queue_walk_safe patch.

4 - Add an entry to MAINTAINERS file for this driver.

5 - Add in-kernel documentation.

The driver is being used on x86, ia64, ppc, arm, mips32 and possibly
other architectures. It is also known to work on multi-core SMP boxes.

--
James Chapman
Katalix Systems Ltd
http://www.katalix.com
Catalysts for your Embedded Linux software development
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ