++ /* mask network address */
++ switch (a->type) {
++ case T_IP:
++ a->x.ip.net.s_addr &= a->x.ip.mask.s_addr;
++ break;
++ case T_IP6:
++ a->x.ip6.net6.s6_addr32[0] &= a->x.ip6.mask6.s6_addr32[0];
++ a->x.ip6.net6.s6_addr32[1] &= a->x.ip6.mask6.s6_addr32[1];
++ a->x.ip6.net6.s6_addr32[2] &= a->x.ip6.mask6.s6_addr32[2];
++ a->x.ip6.net6.s6_addr32[3] &= a->x.ip6.mask6.s6_addr32[3];
++ }