diff options
author | Hannes Frederic Sowa <hannes@stressinduktion.org> | 2015-03-23 23:36:00 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-03-24 03:12:08 +0100 |
commit | 3d1bec99320d4e96897805440f8cf4f68eff226b (patch) | |
tree | 4926f2e4fe0ef525249397d391443e24cbea3fc2 /include | |
parent | lib: EXPORT_SYMBOL sha_init (diff) | |
download | linux-3d1bec99320d4e96897805440f8cf4f68eff226b.tar.xz linux-3d1bec99320d4e96897805440f8cf4f68eff226b.zip |
ipv6: introduce secret_stable to ipv6_devconf
This patch implements the procfs logic for the stable_address knob:
The secret is formatted as an ipv6 address and will be stored per
interface and per namespace. We track initialized flag and return EIO
errors until the secret is set.
We don't inherit the secret to newly created namespaces.
Cc: Erik Kline <ek@google.com>
Cc: Fernando Gont <fgont@si6networks.com>
Cc: Lorenzo Colitti <lorenzo@google.com>
Cc: YOSHIFUJI Hideaki/吉藤英明 <hideaki.yoshifuji@miraclelinux.com>
Signed-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/ipv6.h | 4 | ||||
-rw-r--r-- | include/uapi/linux/ipv6.h | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index 4d5169f5d7d1..82806c60aa42 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h @@ -53,6 +53,10 @@ struct ipv6_devconf { __s32 ndisc_notify; __s32 suppress_frag_ndisc; __s32 accept_ra_mtu; + struct ipv6_stable_secret { + bool initialized; + struct in6_addr secret; + } stable_secret; void *sysctl; }; diff --git a/include/uapi/linux/ipv6.h b/include/uapi/linux/ipv6.h index 437a6a4b125a..5efa54ae567c 100644 --- a/include/uapi/linux/ipv6.h +++ b/include/uapi/linux/ipv6.h @@ -170,6 +170,7 @@ enum { DEVCONF_ACCEPT_RA_FROM_LOCAL, DEVCONF_USE_OPTIMISTIC, DEVCONF_ACCEPT_RA_MTU, + DEVCONF_STABLE_SECRET, DEVCONF_MAX }; |