ipv6: sr: add code base for control plane support of SR-IPv6
This patch adds the necessary hooks and structures to provide support for SR-IPv6 control plane, essentially the Generic Netlink commands that will be used for userspace control over the Segment Routing kernel structures. The genetlink commands provide control over two different structures: tunnel source and HMAC data. The tunnel source is the source address that will be used by default when encapsulating packets into an outer IPv6 header + SRH. If the tunnel source is set to :: then an address of the outgoing interface will be selected as the source. The HMAC commands currently just return ENOTSUPP and will be implemented in a future patch. Signed-off-by: David Lebrun <david.lebrun@uclouvain.be> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
1ababeba4a
commit
915d7e5e59
32
include/uapi/linux/seg6_genl.h
Normal file
32
include/uapi/linux/seg6_genl.h
Normal file
@@ -0,0 +1,32 @@
|
||||
#ifndef _UAPI_LINUX_SEG6_GENL_H
|
||||
#define _UAPI_LINUX_SEG6_GENL_H
|
||||
|
||||
#define SEG6_GENL_NAME "SEG6"
|
||||
#define SEG6_GENL_VERSION 0x1
|
||||
|
||||
enum {
|
||||
SEG6_ATTR_UNSPEC,
|
||||
SEG6_ATTR_DST,
|
||||
SEG6_ATTR_DSTLEN,
|
||||
SEG6_ATTR_HMACKEYID,
|
||||
SEG6_ATTR_SECRET,
|
||||
SEG6_ATTR_SECRETLEN,
|
||||
SEG6_ATTR_ALGID,
|
||||
SEG6_ATTR_HMACINFO,
|
||||
__SEG6_ATTR_MAX,
|
||||
};
|
||||
|
||||
#define SEG6_ATTR_MAX (__SEG6_ATTR_MAX - 1)
|
||||
|
||||
enum {
|
||||
SEG6_CMD_UNSPEC,
|
||||
SEG6_CMD_SETHMAC,
|
||||
SEG6_CMD_DUMPHMAC,
|
||||
SEG6_CMD_SET_TUNSRC,
|
||||
SEG6_CMD_GET_TUNSRC,
|
||||
__SEG6_CMD_MAX,
|
||||
};
|
||||
|
||||
#define SEG6_CMD_MAX (__SEG6_CMD_MAX - 1)
|
||||
|
||||
#endif
|
Reference in New Issue
Block a user