Diff for /libelwix/src/net.c between versions 1.2.2.1 and 1.2.2.2

version 1.2.2.1, 2013/06/03 11:41:45 version 1.2.2.2, 2013/06/03 11:48:26
Line 290  e_usleep(u_int usec) Line 290  e_usleep(u_int usec)
  * return: -1 error, 0 match or 1 not match   * return: -1 error, 0 match or 1 not match
  */   */
 int  int
e_innet(netaddr_t * __restrict net, netaddr_t * __restrict addr)e_innet(netaddr_t * __restrict net, inaddr_t * __restrict addr)
 {  {
         register int i;          register int i;
         int ret = 0;          int ret = 0;
Line 298  e_innet(netaddr_t * __restrict net, netaddr_t * __rest Line 298  e_innet(netaddr_t * __restrict net, netaddr_t * __rest
         if (!net || !addr)          if (!net || !addr)
                 return -1;                  return -1;
   
         if (net->addr.sa.sa_family != addr->addr.sa.sa_family)  
                 return -1;  
         switch (net->addr.sa.sa_family) {          switch (net->addr.sa.sa_family) {
                 case AF_INET:                  case AF_INET:
                         ret = net->addr.sin.sin_addr.s_addr & net->mask.in.s_addr;                          ret = net->addr.sin.sin_addr.s_addr & net->mask.in.s_addr;
                        ret -= addr->addr.sin.sin_addr.s_addr & addr->mask.in.s_addr;                        ret -= addr->in.s_addr & net->mask.in.s_addr;
                         break;                          break;
                 case AF_INET6:                  case AF_INET6:
                         for (i = 0; i < sizeof(struct in6_addr); i++) {                          for (i = 0; i < sizeof(struct in6_addr); i++) {
                                 ret = net->addr.sin6.sin6_addr.s6_addr[i] & net->mask.in6.s6_addr[i];                                  ret = net->addr.sin6.sin6_addr.s6_addr[i] & net->mask.in6.s6_addr[i];
                                ret -= addr->addr.sin6.sin6_addr.s6_addr[i] & addr->mask.in6.s6_addr[i];                                ret -= addr->in6.s6_addr[i] & net->mask.in6.s6_addr[i];
                                 if (ret)                                  if (ret)
                                         break;                                          break;
                         }                          }

Removed from v.1.2.2.1  
changed lines
  Added in v.1.2.2.2


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