devip: reject incompatible multicast/interface ip address pairs for ipifcaddmulti()

This commit is contained in:
cinap_lenrek 2018-06-13 18:58:17 +02:00
parent 8fdd633d57
commit 71ce6f53a4

View file

@ -1466,6 +1466,9 @@ ipifcaddmulti(Conv *c, uchar *ma, uchar *ia)
Ipifc *ifc;
Fs *f;
if(isv4(ma) != isv4(ia))
error("incompatible multicast/interface ip address");
for(l = &c->multi; *l != nil; l = &(*l)->next)
if(ipcmp(ma, (*l)->ma) == 0 && ipcmp(ia, (*l)->ia) == 0)
return; /* it's already there */