Lines Matching refs:ai
855 ai_find_by_family(struct evutil_addrinfo *ai, int family)
857 while (ai) {
858 if (ai->ai_family == family)
859 return ai;
860 ai = ai->ai_next;
866 ai_find_by_protocol(struct evutil_addrinfo *ai, int protocol)
868 while (ai) {
869 if (ai->ai_protocol == protocol)
870 return ai;
871 ai = ai->ai_next;
878 test_ai_eq_(const struct evutil_addrinfo *ai, const char *sockaddr_port,
887 tt_int_op(ai->ai_socktype, ==, socktype);
889 tt_int_op(ai->ai_protocol, ==, protocol);
897 if (ai->ai_family != ss.ss_family) {
899 ai->ai_family, ss.ss_family, line));
902 if (ai->ai_addr->sa_family == AF_INET) {
903 struct sockaddr_in *sin = (struct sockaddr_in*)ai->ai_addr;
906 if (ai->ai_addrlen != sizeof(struct sockaddr_in)) {
911 struct sockaddr_in6 *sin6 = (struct sockaddr_in6*)ai->ai_addr;
914 if (ai->ai_addrlen != sizeof(struct sockaddr_in6)) {
919 if (evutil_sockaddr_cmp(ai->ai_addr, (struct sockaddr*)&ss, 1)) {
1005 struct evutil_addrinfo *ai = NULL, *a;
1013 r = evutil_getaddrinfo("1.2.3.4", "8080", &hints, &ai);
1015 tt_assert(ai);
1016 tt_ptr_op(ai->ai_next, ==, NULL); /* no ambiguity */
1017 test_ai_eq(ai, "1.2.3.4:8080", SOCK_STREAM, IPPROTO_TCP);
1018 evutil_freeaddrinfo(ai);
1019 ai = NULL;
1024 r = evutil_getaddrinfo("1001:b0b::f00f", "4321", &hints, &ai);
1026 tt_assert(ai);
1027 tt_ptr_op(ai->ai_next, ==, NULL); /* no ambiguity */
1028 test_ai_eq(ai, "[1001:b0b::f00f]:4321", SOCK_DGRAM, IPPROTO_UDP);
1029 evutil_freeaddrinfo(ai);
1030 ai = NULL;
1037 r = evutil_getaddrinfo(NULL, "9999", &hints, &ai);
1039 tt_assert(ai);
1040 tt_ptr_op(ai->ai_next, ==, NULL);
1041 test_ai_eq(ai, "0.0.0.0:9999", SOCK_STREAM, IPPROTO_TCP);
1042 evutil_freeaddrinfo(ai);
1043 ai = NULL;
1045 r = evutil_getaddrinfo(NULL, "9998", &hints, &ai);
1046 tt_assert(ai);
1048 test_ai_eq(ai, "127.0.0.1:9998", SOCK_STREAM, IPPROTO_TCP);
1049 tt_ptr_op(ai->ai_next, ==, NULL);
1050 evutil_freeaddrinfo(ai);
1051 ai = NULL;
1055 r = evutil_getaddrinfo(NULL, "9997", &hints, &ai);
1056 tt_assert(ai);
1058 tt_ptr_op(ai->ai_next, ==, NULL);
1059 test_ai_eq(ai, "[::1]:9997", SOCK_STREAM, IPPROTO_TCP);
1060 evutil_freeaddrinfo(ai);
1061 ai = NULL;
1065 r = evutil_getaddrinfo(NULL, "9996", &hints, &ai);
1066 tt_assert(ai);
1068 tt_ptr_op(ai->ai_next, ==, NULL);
1069 test_ai_eq(ai, "[::]:9996", SOCK_STREAM, IPPROTO_TCP);
1070 evutil_freeaddrinfo(ai);
1071 ai = NULL;
1075 r = evutil_getaddrinfo(NULL, "9996", &hints, &ai);
1076 tt_assert(ai);
1078 a = ai_find_by_family(ai, PF_INET6);
1081 a = ai_find_by_family(ai, PF_INET);
1084 evutil_freeaddrinfo(ai);
1085 ai = NULL;
1092 r = evutil_getaddrinfo("1.2.3.4", NULL, &hints, &ai);
1094 a = ai_find_by_protocol(ai, IPPROTO_TCP);
1097 a = ai_find_by_protocol(ai, IPPROTO_UDP);
1100 evutil_freeaddrinfo(ai);
1101 ai = NULL;
1107 r = evutil_getaddrinfo("www.google.com", "80", &hints, &ai);
1109 tt_ptr_op(ai, ==, NULL);
1116 r = evutil_getaddrinfo("1.2.3.4", "http", &hints, &ai);
1123 r = evutil_getaddrinfo("1.2.3.4", "http", &hints, &ai);
1127 tt_assert(ai);
1128 test_ai_eq(ai, "1.2.3.4:80", SOCK_STREAM, IPPROTO_TCP);
1129 evutil_freeaddrinfo(ai);
1130 ai = NULL;
1134 if (ai)
1135 evutil_freeaddrinfo(ai);
1141 struct evutil_addrinfo *ai = NULL;
1155 r = evutil_getaddrinfo("www.google.com", "80", &hints, &ai);
1159 tt_assert(ai);
1160 tt_int_op(ai->ai_family, ==, PF_INET);
1161 tt_int_op(ai->ai_protocol, ==, IPPROTO_TCP);
1162 tt_int_op(ai->ai_socktype, ==, SOCK_STREAM);
1163 tt_int_op(ai->ai_addrlen, ==, sizeof(struct sockaddr_in));
1164 sin = (struct sockaddr_in*)ai->ai_addr;
1172 evutil_freeaddrinfo(ai);
1173 ai = NULL;
1177 r = evutil_getaddrinfo("ipv6.google.com", "80", &hints, &ai);
1181 tt_assert(ai);
1182 tt_int_op(ai->ai_family, ==, PF_INET6);
1183 tt_int_op(ai->ai_addrlen, ==, sizeof(struct sockaddr_in6));
1184 sin6 = (struct sockaddr_in6*)ai->ai_addr;
1194 if (ai)
1195 evutil_freeaddrinfo(ai);
1201 struct evutil_addrinfo *ai = NULL;
1211 r = evutil_getaddrinfo("127.0.0.1", "80", &hints, &ai);
1213 tt_assert(ai);
1214 tt_ptr_op(ai->ai_next, ==, NULL);
1215 test_ai_eq(ai, "127.0.0.1:80", SOCK_STREAM, IPPROTO_TCP);
1216 evutil_freeaddrinfo(ai);
1217 ai = NULL;
1220 r = evutil_getaddrinfo("::1", "80", &hints, &ai);
1222 tt_assert(ai);
1223 tt_ptr_op(ai->ai_next, ==, NULL);
1224 test_ai_eq(ai, "[::1]:80", SOCK_STREAM, IPPROTO_TCP);
1225 evutil_freeaddrinfo(ai);
1226 ai = NULL;
1229 if (ai)
1230 evutil_freeaddrinfo(ai);