+/*
+ * Set interface's Internet address
+ * given the network number. The station
+ * number, taken from the on-board register,
+ * is used as the local part.
+ */
+ensetaddr(es, net)
+ register struct en_softc *es;
+ int net;
+{
+ struct endevice *enaddr;
+ register struct sockaddr_in *sin;
+
+ es->es_if.if_net = net;
+ enaddr = (struct endevice *)eninfo[es->es_if.if_unit]->ui_addr;
+ es->es_if.if_host[0] = (~enaddr->en_addr) & 0xff;
+ sin = (struct sockaddr_in *)&es->es_if.if_addr;
+ sin->sin_family = AF_INET;
+ sin->sin_addr = if_makeaddr(net, es->es_if.if_host[0]);
+ sin = (struct sockaddr_in *)&es->es_if.if_broadaddr;
+ sin->sin_family = AF_INET;
+ sin->sin_addr = if_makeaddr(net, INADDR_ANY);
+ es->es_if.if_flags |= IFF_BROADCAST;
+}
+