summaryrefslogtreecommitdiff
path: root/deps/uv/src/unix/tcp.c
diff options
context:
space:
mode:
authorisaacs <i@izs.me>2012-09-17 15:36:05 -0700
committerisaacs <i@izs.me>2012-09-17 15:36:15 -0700
commitb788c5e77b564183826a4ccb69ec9a43a758a54a (patch)
tree8916ff311d3a7a5ae41022b9c8c198e78e1d55c3 /deps/uv/src/unix/tcp.c
parent7144be70db2e6ce337d0f6ec47a28a06802d1c7a (diff)
downloadandroid-node-v8-b788c5e77b564183826a4ccb69ec9a43a758a54a.tar.gz
android-node-v8-b788c5e77b564183826a4ccb69ec9a43a758a54a.tar.bz2
android-node-v8-b788c5e77b564183826a4ccb69ec9a43a758a54a.zip
uv: Upgrade to 778144f0
joyent/libuv@778144f0b5bc14fe55d79854d0a67124ceaa4b22
Diffstat (limited to 'deps/uv/src/unix/tcp.c')
-rw-r--r--deps/uv/src/unix/tcp.c26
1 files changed, 9 insertions, 17 deletions
diff --git a/deps/uv/src/unix/tcp.c b/deps/uv/src/unix/tcp.c
index 186150be57..4325c5b120 100644
--- a/deps/uv/src/unix/tcp.c
+++ b/deps/uv/src/unix/tcp.c
@@ -30,7 +30,6 @@
int uv_tcp_init(uv_loop_t* loop, uv_tcp_t* tcp) {
uv__stream_init(loop, (uv_stream_t*)tcp, UV_TCP);
- tcp->idle_handle = NULL;
return 0;
}
@@ -153,6 +152,13 @@ int uv__tcp_bind6(uv_tcp_t* handle, struct sockaddr_in6 addr) {
}
+int uv_tcp_open(uv_tcp_t* handle, uv_os_sock_t sock) {
+ return uv__stream_open((uv_stream_t*)handle,
+ sock,
+ UV_STREAM_READABLE | UV_STREAM_WRITABLE);
+}
+
+
int uv_tcp_getsockname(uv_tcp_t* handle, struct sockaddr* name,
int* namelen) {
socklen_t socklen;
@@ -238,20 +244,9 @@ int uv_tcp_listen(uv_tcp_t* tcp, int backlog, uv_connection_cb cb) {
single_accept = (val == NULL) || (atoi(val) != 0); /* on by default */
}
- if (!single_accept)
- goto no_single_accept;
-
- tcp->idle_handle = malloc(sizeof(*tcp->idle_handle));
- if (tcp->idle_handle == NULL)
- return uv__set_sys_error(tcp->loop, ENOMEM);
+ if (single_accept)
+ tcp->flags |= UV_TCP_SINGLE_ACCEPT;
- if (uv_idle_init(tcp->loop, tcp->idle_handle))
- abort();
- tcp->idle_handle->flags |= UV__HANDLE_INTERNAL;
-
- tcp->flags |= UV_TCP_SINGLE_ACCEPT;
-
-no_single_accept:
if (maybe_new_socket(tcp, AF_INET, UV_STREAM_READABLE))
return -1;
@@ -390,8 +385,5 @@ int uv_tcp_simultaneous_accepts(uv_tcp_t* handle, int enable) {
void uv__tcp_close(uv_tcp_t* handle) {
- if (handle->idle_handle)
- uv_close((uv_handle_t*)handle->idle_handle, (uv_close_cb)free);
-
uv__stream_close((uv_stream_t*)handle);
}