Diff for /libelwix/src/net.c between versions 1.10.10.6 and 1.12

version 1.10.10.6, 2014/12/11 01:51:24 version 1.12, 2015/06/25 17:53:50
Line 12  terms: Line 12  terms:
 All of the documentation and software included in the ELWIX and AITNET  All of the documentation and software included in the ELWIX and AITNET
 Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>  Releases is copyrighted by ELWIX - Sofia/Bulgaria <info@elwix.org>
   
Copyright 2004 - 2014Copyright 2004 - 2015
         by Michael Pounov <misho@elwix.org>.  All rights reserved.          by Michael Pounov <misho@elwix.org>.  All rights reserved.
   
 Redistribution and use in source and binary forms, with or without  Redistribution and use in source and binary forms, with or without
Line 129  e_ether_ntoa(const ether_addr_t * __restrict n, char * Line 129  e_ether_ntoa(const ether_addr_t * __restrict n, char *
   
         memset(a, 0, len);          memset(a, 0, len);
         if (snprintf(a, len, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx",           if (snprintf(a, len, "%02hhx:%02hhx:%02hhx:%02hhx:%02hhx:%02hhx", 
                        n->ether_addr_octet[0], n->ether_addr_octet[1],                         n->octet[0], n->octet[1], 
                        n->ether_addr_octet[2], n->ether_addr_octet[3],                         n->octet[2], n->octet[3], 
                        n->ether_addr_octet[4], n->ether_addr_octet[5]) < 17)                        n->octet[4], n->octet[5]) < 17)
                 return NULL;                  return NULL;
   
         return a;          return a;
Line 153  e_ether_aton(const char *a, ether_addr_t * __restrict  Line 153  e_ether_aton(const char *a, ether_addr_t * __restrict 
                 return NULL;                  return NULL;
   
         i = sscanf(a, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx",           i = sscanf(a, "%hhx:%hhx:%hhx:%hhx:%hhx:%hhx", 
                        &e->ether_addr_octet[0],                         &e->octet[0], 
                        &e->ether_addr_octet[1],                         &e->octet[1], 
                        &e->ether_addr_octet[2],                         &e->octet[2], 
                        &e->ether_addr_octet[3],                         &e->octet[3], 
                        &e->ether_addr_octet[4],                         &e->octet[4], 
                        &e->ether_addr_octet[5]);                        &e->octet[5]);
         if (i != 6)          if (i != 6)
                 return NULL;                  return NULL;
   
Line 332  e_addrcmp(sockaddr_t * __restrict a, sockaddr_t * __re Line 332  e_addrcmp(sockaddr_t * __restrict a, sockaddr_t * __re
                         case AF_LINK:                          case AF_LINK:
                                 return memcmp(&a->sdl.sdl_data, &b->sdl.sdl_data,                                   return memcmp(&a->sdl.sdl_data, &b->sdl.sdl_data, 
                                                 sizeof a->sdl.sdl_data);                                                  sizeof a->sdl.sdl_data);
                           case AF_UNSPEC:
                                   return memcmp(a, b, sizeof(sockaddr_t));
                 }                  }
   
         return (int) !!(a - b);          return (int) !!(a - b);
Line 569  e_getlinkbyname(const char *psHost, sockaddr_t * __res Line 571  e_getlinkbyname(const char *psHost, sockaddr_t * __res
                 a = NULL;                  a = NULL;
   
         AIT_FREE_VAL(&v);          AIT_FREE_VAL(&v);
           return a;
   }
   
   /*
    * e_getlinkbyether() - Get ethernet address and make network structure
    *
    * @mac = Ethernet address
    * @idx = Interface index
    * @type = Interface type
    * @iface = Interface name
    * @addr = Network address structure
    * return: NULL error or !=NULL network structure
    */
   sockaddr_t *
   e_getlinkbyether(const ether_addr_t * __restrict mac, u_short idx, u_char type, 
                   const char *iface, sockaddr_t * __restrict addr)
   {
           sockaddr_t *a = addr;
   
           if (!addr)
                   return NULL;
           else
                   memset(addr, 0, sizeof(sockaddr_t));
   
           addr->sdl.sdl_len = sizeof(struct sockaddr_dl);
           addr->sdl.sdl_family = AF_LINK;
           addr->sdl.sdl_index = idx;
           addr->sdl.sdl_type = type;
           if (iface && *iface) {
                   addr->sdl.sdl_nlen = strlen(iface);
                   memcpy(addr->sdl.sdl_data, iface, addr->sdl.sdl_nlen);
           }
           addr->sdl.sdl_alen = sizeof(ether_addr_t);
           memcpy(LLADDR(&addr->sdl), mac, addr->sdl.sdl_alen);
   
         return a;          return a;
 }  }

Removed from v.1.10.10.6  
changed lines
  Added in v.1.12


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>