diff options
Diffstat (limited to 'usr/src/cmd/dladm/dladm.c')
| -rw-r--r-- | usr/src/cmd/dladm/dladm.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/usr/src/cmd/dladm/dladm.c b/usr/src/cmd/dladm/dladm.c index c4fe45cf40..1edd13b0cb 100644 --- a/usr/src/cmd/dladm/dladm.c +++ b/usr/src/cmd/dladm/dladm.c @@ -4097,6 +4097,8 @@ iptun_process_addrarg(char *addrarg, iptun_params_t *params) while (*addrarg != '\0') { switch (getsubopt(&addrarg, iptun_addropts, &addrval)) { case IPTUN_LOCAL: + if (addrval == NULL) + die("tunnel source address value is missing"); params->iptun_param_flags |= IPTUN_PARAM_LADDR; if (strlcpy(params->iptun_param_laddr, addrval, sizeof (params->iptun_param_laddr)) >= @@ -4104,6 +4106,9 @@ iptun_process_addrarg(char *addrarg, iptun_params_t *params) die("tunnel source address is too long"); break; case IPTUN_REMOTE: + if (addrval == NULL) + die("tunnel destination address value " + "is missing"); params->iptun_param_flags |= IPTUN_PARAM_RADDR; if (strlcpy(params->iptun_param_raddr, addrval, sizeof (params->iptun_param_raddr)) >= |
