-ensetaddr(ifp, sin)
- register struct ifnet *ifp;
- register struct sockaddr_in *sin;
-{
- struct endevice *enaddr;
-
- ifp->if_net = in_netof(sin->sin_addr);
- enaddr = (struct endevice *)eninfo[ifp->if_unit]->ui_addr;
- ifp->if_host[0] = (~enaddr->en_addr) & 0xff;
- sin = (struct sockaddr_in *)&ifp->if_addr;
- sin->sin_family = AF_INET;
- sin->sin_addr = if_makeaddr(ifp->if_net, ifp->if_host[0]);
- sin = (struct sockaddr_in *)&ifp->if_broadaddr;
- sin->sin_family = AF_INET;
- sin->sin_addr = if_makeaddr(ifp->if_net, INADDR_ANY);
- ifp->if_flags |= IFF_BROADCAST;
-}
-