[PATCH v2] ct: add ICMPv6 support

Holger Eitzenberger holger at eitzenberger.org
Sun Mar 31 15:16:21 EDT 2013


Hi Thomas,

currently the ICMPv6 conntrack objects in libnl are without type, code
and ID.  This e. g. is the output of nl_object_dump() without the patch:

  ipv6-icmp ::1 <-> ::1 
  id 0xdd0871f0 family inet6 timeout 30s <NOREPLY,SNAT_INIT,DNAT_INIT>

The attached patch tries to solve that.  It then looks like

  ipv6-icmp ::1 <-> ::1 icmp type 128 code 0 id 28253 
  id 0xdf3a11f0 family inet6 timeout 30s <SNAT_INIT,DNAT_INIT>

It is the 'small' approach, because it reuses the existing ICMP
attributes of the conntrack object (currently only used for IPv4).
This way I can avoid to add new _icmp6_get_, _icmp6_set_ and
_icmp6_test_ functions.

There are two changes from the v1 patch:

* byte-swap was missing for ICMPv6 ID
* conditionally check for ICMP or ICMPv6 attributes dep. on family

Please let me know if something is missing.

Regards,

 /Holger

-------------- next part --------------
A non-text attachment was scrubbed...
Name: ct-ICMPv6-support.diff
Type: text/x-diff
Size: 2932 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/libnl/attachments/20130331/e9352ef5/attachment.bin>


More information about the libnl mailing list