From a40df25abfe506d75d925d8c890834eb094c1172 Mon Sep 17 00:00:00 2001 From: ru Date: Wed, 29 Dec 1999 13:53:13 +0000 Subject: - do not dereference a null pointer. - minor sanity. PR: 15318 --- sbin/ifconfig/ifconfig.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'sbin/ifconfig') diff --git a/sbin/ifconfig/ifconfig.c b/sbin/ifconfig/ifconfig.c index 8a256de..3e1af69 100644 --- a/sbin/ifconfig/ifconfig.c +++ b/sbin/ifconfig/ifconfig.c @@ -609,10 +609,10 @@ ifconfig(argc, argv, afp) } } if (newaddr) { - if (afp->af_ridreq == NULL || afp->af_difaddr == 0) { + if (afp->af_addreq == NULL || afp->af_aifaddr == 0) { warnx("interface %s cannot change %s addresses!", name, afp->af_name); - newaddr = NULL; + newaddr = 0; } } if (newaddr) { @@ -636,6 +636,8 @@ setifaddr(addr, param, s, afp) int s; const struct afswtch *afp; { + if (*afp->af_getaddr == NULL) + return; /* * Delay the ioctl to set the interface addr until flags are all set. * The address interpretation may depend on the flags, @@ -654,6 +656,8 @@ setifnetmask(addr, dummy, s, afp) int s; const struct afswtch *afp; { + if (*afp->af_getaddr == NULL) + return; (*afp->af_getaddr)(addr, MASK); } @@ -694,6 +698,8 @@ setifbroadaddr(addr, dummy, s, afp) int s; const struct afswtch *afp; { + if (*afp->af_getaddr == NULL) + return; (*afp->af_getaddr)(addr, DSTADDR); } @@ -738,6 +744,8 @@ setifdstaddr(addr, param, s, afp) int s; const struct afswtch *afp; { + if (*afp->af_getaddr == NULL) + return; (*afp->af_getaddr)(addr, DSTADDR); } -- cgit v1.1