Merge pull request #4304 from authmillenon/shell/fix/address-ltime

shell: sc_netif: set valid lifetime for manual addresses to infinity
This commit is contained in:
Joakim Nohlgård 2016-03-16 14:26:57 +01:00
commit 3f5bf480fb

View File

@ -717,6 +717,7 @@ static int _netif_add(char *cmd_name, kernel_pid_t dev, int argc, char **argv)
} type = _UNICAST; } type = _UNICAST;
char *addr_str = argv[0]; char *addr_str = argv[0];
ipv6_addr_t addr; ipv6_addr_t addr;
ipv6_addr_t *ifaddr;
uint8_t prefix_len, flags = 0; uint8_t prefix_len, flags = 0;
if (argc > 1) { if (argc > 1) {
@ -758,11 +759,16 @@ static int _netif_add(char *cmd_name, kernel_pid_t dev, int argc, char **argv)
flags |= GNRC_IPV6_NETIF_ADDR_FLAGS_UNICAST; flags |= GNRC_IPV6_NETIF_ADDR_FLAGS_UNICAST;
} }
if (gnrc_ipv6_netif_add_addr(dev, &addr, prefix_len, flags) == NULL) { if ((ifaddr = gnrc_ipv6_netif_add_addr(dev, &addr, prefix_len, flags)) == NULL) {
printf("error: unable to add IPv6 address\n"); printf("error: unable to add IPv6 address\n");
return 1; return 1;
} }
/* Address shall be valid infinitely */
gnrc_ipv6_netif_addr_get(ifaddr)->valid = UINT32_MAX;
/* Address shall be preferred infinitely */
gnrc_ipv6_netif_addr_get(ifaddr)->preferred = UINT32_MAX;
printf("success: added %s/%d to interface %" PRIkernel_pid "\n", addr_str, printf("success: added %s/%d to interface %" PRIkernel_pid "\n", addr_str,
prefix_len, dev); prefix_len, dev);