CVSROOT: /cvs
Module name: src
Changes by: [email protected] 2021/01/25 12:47:16
Modified files:
sys/net : bridgectl.c bridgestp.c if_bridge.c if_bridge.h
Log message:
We have this sequence in bridge(4) ioctl(2) path:
ifs = ifunit(req->ifbr_ifsname);
if (ifs == NULL) {
error = ENOENT;
break;
}
if (ifs->if_bridgeidx != ifp->if_index) {
error = ESRCH;
break;
}
bif = bridge_getbif(ifs);
This sequence repeats 8 times. Also we don't check value returned by
bridge_getbig() before use. Newly introduced bridge_getbig() function
replaces this sequence. This not only reduces duplicated code but also
makes `bif' dereference safe.
ok bluhm@