Subject: Re: [PATCH iproute2] ipv6: allow setting stable_secret mode

From: Stephen Hemminger <[email-masked]>
Date: Wed, 16 Dec 2015 10:56:20 -0800

On Wed, 16 Dec 2015 12:30:08 +0100
Hannes Frederic Sowa <[email-masked]> wrote:

> Signed-off-by: Hannes Frederic Sowa <[email-masked]>
> ---
>  ip/iplink.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/ip/iplink.c b/ip/iplink.c
> index f30de86d1858a0..e824082f7d8149 100644
> --- a/ip/iplink.c
> +++ b/ip/iplink.c
> @@ -84,7 +84,7 @@ void iplink_usage(void)
>  	fprintf(stderr, "				   [ state { auto | enable | disable} ] ]\n");
>  	fprintf(stderr, "			  [ master DEVICE ]\n");
>  	fprintf(stderr, "			  [ nomaster ]\n");
> -	fprintf(stderr, "			  [ addrgenmode { eui64 | none } ]\n");
> +	fprintf(stderr, "			  [ addrgenmode { eui64 | none | stable_secret } ]\n");
>  	fprintf(stderr, "	                  [ protodown { on | off } ]\n");
>  	fprintf(stderr, "       ip link show [ DEVICE | group GROUP ] [up] [master DEV] [type TYPE]\n");
>  
> @@ -176,6 +176,8 @@ static int get_addr_gen_mode(const char *mode)
>  		return IN6_ADDR_GEN_MODE_EUI64;
>  	if (strcasecmp(mode, "none") == 0)
>  		return IN6_ADDR_GEN_MODE_NONE;
> +	if (strcasecmp(mode, "stable_secret") == 0)
> +		return IN6_ADDR_GEN_MODE_STABLE_PRIVACY;
>  	return -1;
>  }
>  

ip options are supposed to be clse to invertable. ie what is displayed on show
command should match what are options for set.  There were even some VPN scripts
that depended on this.