netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [net-next 0/7][pull request] ipv6: Extension header infrastructure
@ 2019-08-22 22:59 Jeff Kirsher
  2019-08-22 22:59 ` [net-next 1/7] ipeh: Create exthdrs_options.c and ipeh.h Jeff Kirsher
                   ` (7 more replies)
  0 siblings, 8 replies; 10+ messages in thread
From: Jeff Kirsher @ 2019-08-22 22:59 UTC (permalink / raw)
  To: davem; +Cc: Jeff Kirsher, netdev, nhorman, sassmann

This patchset improves the IPv6 extension header infrastructure
to make extension headers more usable and scalable.

  - Reorganize extension header files to separate out common
    API components
  - Create common TLV handler that will can be used in other use
    cases (e.g. segment routing TLVs, UDP options)
  - Allow registration of TLV handlers
  - Elaborate on the TLV tables to include more characteristics
  - Add a netlink interface to set TLV parameters (such as
    alignment requirements, authorization to send, etc.)
  - Enhance validation of TLVs being sent. Validation is strict
    (unless overridden by admin) following that sending clause
    of the robustness principle
  - Allow non-privileged users to set Hop-by-Hop and Destination
    Options if authorized by the admin

The following are changes since commit c76c992525245ec1c7b6738bf887c42099abab02:
  nexthops: remove redundant assignment to variable err
and are available in the git repository at:
  git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 1GbE

Tom Herbert (7):
  ipeh: Create exthdrs_options.c and ipeh.h
  ipeh: Move generic EH functions to exthdrs_common.c
  ipeh: Generic TLV parser
  ip6tlvs: Registration of TLV handlers and parameters
  ip6tlvs: Add TX parameters
  ip6tlvs: Add netlink interface
  ip6tlvs: Validation of TX Destination and Hop-by-Hop options

 include/net/ipeh.h         |  208 +++++++
 include/net/ipv6.h         |   12 +-
 include/uapi/linux/in6.h   |    6 +
 include/uapi/linux/ipeh.h  |   53 ++
 net/dccp/ipv6.c            |    2 +-
 net/ipv6/Kconfig           |    4 +
 net/ipv6/Makefile          |    3 +-
 net/ipv6/calipso.c         |    6 +-
 net/ipv6/datagram.c        |   51 +-
 net/ipv6/exthdrs.c         |  505 ++--------------
 net/ipv6/exthdrs_common.c  | 1158 ++++++++++++++++++++++++++++++++++++
 net/ipv6/exthdrs_options.c |  342 +++++++++++
 net/ipv6/ipv6_sockglue.c   |   39 +-
 net/ipv6/raw.c             |    2 +-
 net/ipv6/tcp_ipv6.c        |    2 +-
 net/ipv6/udp.c             |    2 +-
 net/l2tp/l2tp_ip6.c        |    2 +-
 net/sctp/ipv6.c            |    2 +-
 18 files changed, 1881 insertions(+), 518 deletions(-)
 create mode 100644 include/net/ipeh.h
 create mode 100644 include/uapi/linux/ipeh.h
 create mode 100644 net/ipv6/exthdrs_common.c
 create mode 100644 net/ipv6/exthdrs_options.c

-- 
2.21.0


^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-08-22 23:08 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-22 22:59 [net-next 0/7][pull request] ipv6: Extension header infrastructure Jeff Kirsher
2019-08-22 22:59 ` [net-next 1/7] ipeh: Create exthdrs_options.c and ipeh.h Jeff Kirsher
2019-08-22 22:59 ` [net-next 2/7] ipeh: Move generic EH functions to exthdrs_common.c Jeff Kirsher
2019-08-22 22:59 ` [net-next 3/7] ipeh: Generic TLV parser Jeff Kirsher
2019-08-22 22:59 ` [net-next 4/7] ip6tlvs: Registration of TLV handlers and parameters Jeff Kirsher
2019-08-22 22:59 ` [net-next 5/7] ip6tlvs: Add TX parameters Jeff Kirsher
2019-08-22 22:59 ` [net-next 6/7] ip6tlvs: Add netlink interface Jeff Kirsher
2019-08-22 22:59 ` [net-next 7/7] ip6tlvs: Validation of TX Destination and Hop-by-Hop options Jeff Kirsher
2019-08-22 23:01 ` [net-next 0/7][pull request] ipv6: Extension header infrastructure David Miller
2019-08-22 23:08   ` David Miller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).