--
-- mac[0] = mac[1] = mac[2] = mac[3] = mac[4] = mac[5] = 0;
--
-- int s = socket(AF_INET, SOCK_DGRAM, 0);
--
-- ifc.ifc_len = sizeof(ifs);
-- ifc.ifc_req = ifs;
--
-- if (ioctl(s, SIOCGIFCONF, &ifc) == 0) {
-- ifend = ifs + (ifc.ifc_len / sizeof(struct ifreq));
--
-- for (ifr = ifc.ifc_req; ifr < ifend; ifr++) {
-- if (ifr->ifr_addr.sa_family == AF_INET) {
--
-- strncpy(ifreq.ifr_name, ifr->ifr_name, sizeof(ifreq.ifr_name));
-- if (ioctl (s, SIOCGIFHWADDR, &ifreq) == 0) {
-- memcpy(mac, ifreq.ifr_hwaddr.sa_data, 6);
-- if (mac[0]+mac[1]+mac[2] != 0) {
-- break;
-- }