summaryrefslogtreecommitdiff
path: root/ext/socket/raddrinfo.c
diff options
context:
space:
mode:
authorMasaki Matsushita <glass.saga@gmail.com>2020-08-28 13:07:31 +0900
committerMasaki Matsushita <glass.saga@gmail.com>2020-09-25 15:19:14 +0900
commit511fe23fa2bdf1f17faa91e0558be47b5bb62b2a (patch)
tree203566d21fc91aaf6fe8c6c4c1125a641b521661 /ext/socket/raddrinfo.c
parentb72f9200acf88e60c850a2d400554ff38f81194d (diff)
downloadruby-511fe23fa2bdf1f17faa91e0558be47b5bb62b2a.tar.gz
Add resolve_timeout to TCPSocket [Feature #17134]
Diffstat (limited to 'ext/socket/raddrinfo.c')
-rw-r--r--ext/socket/raddrinfo.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/ext/socket/raddrinfo.c b/ext/socket/raddrinfo.c
index 4dd2867781..211f05c7eb 100644
--- a/ext/socket/raddrinfo.c
+++ b/ext/socket/raddrinfo.c
@@ -662,6 +662,20 @@ rsock_addrinfo(VALUE host, VALUE port, int family, int socktype, int flags)
return rsock_getaddrinfo(host, port, &hints, 1);
}
+#ifdef HAVE_GETADDRINFO_A
+struct rb_addrinfo*
+rsock_addrinfo_a(VALUE host, VALUE port, int family, int socktype, int flags, VALUE timeout)
+{
+ struct addrinfo hints;
+
+ MEMZERO(&hints, struct addrinfo, 1);
+ hints.ai_family = family;
+ hints.ai_socktype = socktype;
+ hints.ai_flags = flags;
+ return rsock_getaddrinfo_a(host, port, &hints, 1, timeout);
+}
+#endif
+
VALUE
rsock_ipaddr(struct sockaddr *sockaddr, socklen_t sockaddrlen, int norevlookup)
{