about summary refs log tree commit diff
path: root/src/rt/rust_uv.cpp
diff options
context:
space:
mode:
authorJeff Olson <olson.jeffery@gmail.com>2012-06-22 13:55:54 -0700
committerBrian Anderson <banderson@mozilla.com>2012-06-29 15:41:56 -0700
commit237589b3c0cea40ca23a7a913f80628f0e38afa8 (patch)
treebcfdcc353ae71be7fc0430bcf4757593e53da42f /src/rt/rust_uv.cpp
parentccd4bfb6ca35eac096235c8303370c87dce338eb (diff)
downloadrust-237589b3c0cea40ca23a7a913f80628f0e38afa8.tar.gz
rust-237589b3c0cea40ca23a7a913f80628f0e38afa8.zip
rt: more helper functions to get uv_getaddrinfo going
Diffstat (limited to 'src/rt/rust_uv.cpp')
-rw-r--r--src/rt/rust_uv.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/rt/rust_uv.cpp b/src/rt/rust_uv.cpp
index 4d3de40f95e..4b9fe5e0047 100644
--- a/src/rt/rust_uv.cpp
+++ b/src/rt/rust_uv.cpp
@@ -510,3 +510,20 @@ rust_uv_getaddrinfo(uv_loop_t* loop, uv_getaddrinfo_t* handle, uv_getaddrinfo_cb
 					const char* node, const char* service, const struct addrinfo* hints) {
 	return uv_getaddrinfo(loop, handle, cb, node, service, hints);
 }
+extern "C" bool
+rust_uv_is_ipv4_addrinfo(addrinfo* input) {
+	// if it aint AF_INET, it's AF_INET6
+	return input->ai_family == AF_INET;
+}
+extern "C" addrinfo*
+rust_uv_get_next_addrinfo(addrinfo* input) {
+	return input->ai_next;
+}
+extern "C" sockaddr_in*
+rust_uv_addrinfo_as_sockaddr_in(addrinfo* input) {
+	return (sockaddr_in*)input->ai_addr;
+}
+extern "C" sockaddr_in6*
+rust_uv_addrinfo_as_sockaddr_in6(addrinfo* input) {
+	return (sockaddr_in6*)input->ai_addr;
+}