| 761 | } |
| 762 | |
| 763 | struct addrinfo *wireaddr_internal_to_addrinfo(const tal_t *ctx, |
| 764 | const struct wireaddr_internal *wireaddr) |
| 765 | { |
| 766 | struct addrinfo *ai = talz(ctx, struct addrinfo); |
| 767 | struct sockaddr_un *sun; |
| 768 | |
| 769 | ai->ai_socktype = SOCK_STREAM; |
| 770 | |
| 771 | switch (wireaddr->itype) { |
| 772 | case ADDR_INTERNAL_SOCKNAME: |
| 773 | sun = tal(ai, struct sockaddr_un); |
| 774 | wireaddr_to_sockname(wireaddr, sun); |
| 775 | ai->ai_family = sun->sun_family; |
| 776 | ai->ai_addrlen = sizeof(*sun); |
| 777 | ai->ai_addr = (struct sockaddr *)sun; |
| 778 | return ai; |
| 779 | case ADDR_INTERNAL_ALLPROTO: |
| 780 | case ADDR_INTERNAL_AUTOTOR: |
| 781 | case ADDR_INTERNAL_STATICTOR: |
| 782 | case ADDR_INTERNAL_FORPROXY: |
| 783 | break; |
| 784 | case ADDR_INTERNAL_WIREADDR: |
| 785 | return wireaddr_to_addrinfo(ctx, &wireaddr->u.wireaddr); |
| 786 | } |
| 787 | abort(); |
| 788 | } |
| 789 | |
| 790 | struct addrinfo *wireaddr_to_addrinfo(const tal_t *ctx, |
| 791 | const struct wireaddr *wireaddr) |
no test coverage detected