[PATCHv3 bluetooth-next 0/3] 6lowpan: introduce nhc framework

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This patch series introduce the next header compression framework. Currently
we support udp compression/uncompression only. This framework allow to add new
next header compression formats easily.

If somebody wants to add a new header compression format and some information
are missing while calling compression and uncompression callbacks. Please
feel free to make framework changes according these callbacks.

changes since v2:
 - make udp nhc as module as suggested by Marcel Holtmann
 - fix comment header in nhc_udp.c

I didn't make the lowpan_nhc declaration "const" because this will occur
issues with rb_node, id and idmask array. Which will manipulated during
runtime.

changes since v3:
 - add patch 3/3 for other known rfc6282 ipv6 extension headers compression
   formats
 - add request_modules for loading nhc default compression format modules.
   Which was suggested by Jukka Rissanen. Thanks, this is really working.
 - Add rtnl_lock for lowpan_nhc_add and del since we have no synced
   request_modules call this could make trouble.
 - Move some handling out of nhc_do_compression and uncompression function.
   The complete handling is now inside of iphc.c and nhc_do_compression and
   uncompression functions is only a wrapper call for the callback.
 - rework some menuentries for Kconfig and compression format, they are
   grouped by rfc now.
 - move some generic handling like "skb_pull(skb, nhc->nexthdrlen);" into
   iphc.c. It would be great if we have something also for uncompression
   for the skb_cow. But this isn't possible right now.
 - change warning if nhc was not found to "was not found" instead isn't
   implemented. It isn't implemented if callbacks are NULL now.
 - small cleanups.

Cc: Jukka Rissanen <jukka.rissanen@xxxxxxxxxxxxxxx>
Cc: Martin Townsend <mtownsend1973@xxxxxxxxx>
Cc: Marcel Holtmann <marcel@xxxxxxxxxxxx>

Alexander Aring (3):
  6lowpan: add generic nhc layer interface
  6lowpan: add udp compression via nhc layer
  6lowpan: nhc: add other known rfc6282 compressions

 net/6lowpan/Kconfig             |  60 ++++++++++-
 net/6lowpan/Makefile            |  13 ++-
 net/6lowpan/iphc.c              | 223 +++++++++++-----------------------------
 net/6lowpan/nhc.c               | 140 +++++++++++++++++++++++++
 net/6lowpan/nhc.h               | 142 +++++++++++++++++++++++++
 net/6lowpan/nhc_rfc6282_dest.c  |  27 +++++
 net/6lowpan/nhc_rfc6282_frag.c  |  26 +++++
 net/6lowpan/nhc_rfc6282_hop.c   |  26 +++++
 net/6lowpan/nhc_rfc6282_ipv6.c  |  26 +++++
 net/6lowpan/nhc_rfc6282_mobil.c |  26 +++++
 net/6lowpan/nhc_rfc6282_route.c |  26 +++++
 net/6lowpan/nhc_rfc6282_udp.c   | 156 ++++++++++++++++++++++++++++
 12 files changed, 724 insertions(+), 167 deletions(-)
 create mode 100644 net/6lowpan/nhc.c
 create mode 100644 net/6lowpan/nhc.h
 create mode 100644 net/6lowpan/nhc_rfc6282_dest.c
 create mode 100644 net/6lowpan/nhc_rfc6282_frag.c
 create mode 100644 net/6lowpan/nhc_rfc6282_hop.c
 create mode 100644 net/6lowpan/nhc_rfc6282_ipv6.c
 create mode 100644 net/6lowpan/nhc_rfc6282_mobil.c
 create mode 100644 net/6lowpan/nhc_rfc6282_route.c
 create mode 100644 net/6lowpan/nhc_rfc6282_udp.c

-- 
2.1.3

--
To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux