Lines Matching defs:aio
641 struct ai_order *aio;
656 if ((aio = malloc(sizeof(*aio) * n)) == NULL)
658 memset(aio, 0, sizeof(*aio) * n);
664 free(aio);
669 aio[i].aio_ai = ai;
670 aio[i].aio_dstscope = gai_addr2scopetype(ai->ai_addr);
671 aio[i].aio_dstpolicy = match_addrselectpolicy(ai->ai_addr,
673 set_source(&aio[i], &policyhead);
677 qsort(aio, n, sizeof(*aio), comp_dst);
681 *aip = aio[i].aio_ai;
682 aip = &aio[i].aio_ai->ai_next;
687 free(aio);
811 set_source(struct ai_order *aio, struct policyhead *ph)
813 struct addrinfo ai = *aio->aio_ai;
819 aio->aio_srcsa.sa_family = AF_UNSPEC;
820 aio->aio_srcscope = -1;
848 if (_getsockname(s, &aio->aio_srcsa, &srclen) < 0) {
849 aio->aio_srcsa.sa_family = AF_UNSPEC;
852 aio->aio_srcscope = gai_addr2scopetype(&aio->aio_srcsa);
853 aio->aio_srcpolicy = match_addrselectpolicy(&aio->aio_srcsa, ph);
854 aio->aio_matchlen = matchlen(&aio->aio_srcsa, aio->aio_ai->ai_addr);
865 aio->aio_srcflag |= AIO_SRCFLAG_DEPRECATED;