FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Upgrade libuv to 7b87ff7c9b · tmishra/node@cb1a21b · GitHub

Repository navigation

Commit cb1a21b

Browse files
committed
Upgrade libuv to 7b87ff7c9b
1 parent 766430c commit cb1a21b

15 files changed

Lines changed: 257 additions & 130 deletions

File tree

‎deps/uv/include/uv-private/uv-win.h‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ RB_HEAD(uv_timer_tree_s, uv_timer_s);
7373
uv_prepare_t* next_prepare_handle; \
7474
uv_check_t* next_check_handle; \
7575
uv_idle_t* next_idle_handle; \
76-
ares_channel ares_channel; \
76+
ares_channel ares_chan; \
7777
int ares_active_sockets; \
7878
uv_timer_t ares_polling_timer; \
7979
/* Last error code */ \

‎deps/uv/include/uv.h‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -415,6 +415,8 @@ int uv_tcp_init(uv_loop_t*, uv_tcp_t* handle);
415415

416416
int uv_tcp_bind(uv_tcp_t* handle, struct sockaddr_in);
417417
int uv_tcp_bind6(uv_tcp_t* handle, struct sockaddr_in6);
418+
int uv_tcp_getsockname(uv_tcp_t* handle, struct sockaddr* name, int* namelen);
419+
int uv_tcp_getpeername(uv_tcp_t* handle, struct sockaddr* name, int* namelen);
418420

419421
/*
420422
* uv_tcp_connect, uv_tcp_connect6
@@ -436,9 +438,6 @@ struct uv_connect_s {
436438
};
437439

438440

439-
int uv_getsockname(uv_handle_t* handle, struct sockaddr* name, int* namelen);
440-
441-
442441
/*
443442
* UDP support.
444443
*/
@@ -521,6 +520,7 @@ int uv_udp_bind(uv_udp_t* handle, struct sockaddr_in addr, unsigned flags);
521520
* 0 on success, -1 on error.
522521
*/
523522
int uv_udp_bind6(uv_udp_t* handle, struct sockaddr_in6 addr, unsigned flags);
523+
int uv_udp_getsockname(uv_udp_t* handle, struct sockaddr* name, int* namelen);
524524

525525
/*
526526
* Send data. If the socket has not previously been bound with `uv_udp_bind`

‎deps/uv/src/unix/core.c‎

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -300,27 +300,6 @@ void uv__next(EV_P_ ev_idle* watcher, int revents) {
300300
}
301301

302302

303-
int uv_getsockname(uv_handle_t* handle, struct sockaddr* name, int* namelen) {
304-
socklen_t socklen;
305-
int saved_errno;
306-
307-
/* Don't clobber errno. */
308-
saved_errno = errno;
309-
310-
/* sizeof(socklen_t) != sizeof(int) on some systems. */
311-
socklen = (socklen_t)*namelen;
312-
313-
if (getsockname(handle->fd, name, &socklen) == -1) {
314-
uv_err_new(handle->loop, errno);
315-
} else {
316-
*namelen = (int)socklen;
317-
}
318-
319-
errno = saved_errno;
320-
return 0;
321-
}
322-
323-
324303
void uv_ref(uv_loop_t* loop) {
325304
ev_ref(loop->ev);
326305
}

‎deps/uv/src/unix/error.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
#include <errno.h>
3131
#include <stdio.h>
3232
#include <stdlib.h>
33+
#include <string.h>
3334

3435

3536
/* TODO Expose callback to user to handle fatal error like V8 does. */
@@ -79,6 +80,7 @@ static uv_err_code uv_translate_sys_error(int sys_errno) {
7980
case ECONNREFUSED: return UV_ECONNREFUSED;
8081
case EADDRINUSE: return UV_EADDRINUSE;
8182
case EADDRNOTAVAIL: return UV_EADDRNOTAVAIL;
83+
case ENOTCONN: return UV_ENOTCONN;
8284
default: return UV_UNKNOWN;
8385
}
8486
}

‎deps/uv/src/unix/stream.c‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@
2626
#include <errno.h>
2727
#include <unistd.h>
2828
#include <stdlib.h>
29+
#include <string.h>
2930
#include <sys/uio.h>
3031

3132

‎deps/uv/src/unix/tcp.c‎

Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,80 @@ int uv_tcp_bind6(uv_tcp_t* tcp, struct sockaddr_in6 addr) {
122122
}
123123

124124

125+
int uv_tcp_getsockname(uv_tcp_t* handle, struct sockaddr* name,
126+
int* namelen) {
127+
socklen_t socklen;
128+
int saved_errno;
129+
int rv = 0;
130+
131+
/* Don't clobber errno. */
132+
saved_errno = errno;
133+
134+
if (handle->delayed_error) {
135+
uv_err_new(handle->loop, handle->delayed_error);
136+
rv = -1;
137+
goto out;
138+
}
139+
140+
if (handle->fd < 0) {
141+
uv_err_new(handle->loop, EINVAL);
142+
rv = -1;
143+
goto out;
144+
}
145+
146+
/* sizeof(socklen_t) != sizeof(int) on some systems. */
147+
socklen = (socklen_t)*namelen;
148+
149+
if (getsockname(handle->fd, name, &socklen) == -1) {
150+
uv_err_new(handle->loop, errno);
151+
rv = -1;
152+
} else {
153+
*namelen = (int)socklen;
154+
}
155+
156+
out:
157+
errno = saved_errno;
158+
return rv;
159+
}
160+
161+
162+
int uv_tcp_getpeername(uv_tcp_t* handle, struct sockaddr* name,
163+
int* namelen) {
164+
socklen_t socklen;
165+
int saved_errno;
166+
int rv = 0;
167+
168+
/* Don't clobber errno. */
169+
saved_errno = errno;
170+
171+
if (handle->delayed_error) {
172+
uv_err_new(handle->loop, handle->delayed_error);
173+
rv = -1;
174+
goto out;
175+
}
176+
177+
if (handle->fd < 0) {
178+
uv_err_new(handle->loop, EINVAL);
179+
rv = -1;
180+
goto out;
181+
}
182+
183+
/* sizeof(socklen_t) != sizeof(int) on some systems. */
184+
socklen = (socklen_t)*namelen;
185+
186+
if (getpeername(handle->fd, name, &socklen) == -1) {
187+
uv_err_new(handle->loop, errno);
188+
rv = -1;
189+
} else {
190+
*namelen = (int)socklen;
191+
}
192+
193+
out:
194+
errno = saved_errno;
195+
return rv;
196+
}
197+
198+
125199
int uv_tcp_listen(uv_tcp_t* tcp, int backlog, uv_connection_cb cb) {
126200
int r;
127201

‎deps/uv/src/unix/udp.c‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -460,6 +460,37 @@ int uv_udp_bind6(uv_udp_t* handle, struct sockaddr_in6 addr, unsigned flags) {
460460
}
461461

462462

463+
int uv_udp_getsockname(uv_udp_t* handle, struct sockaddr* name,
464+
int* namelen) {
465+
socklen_t socklen;
466+
int saved_errno;
467+
int rv = 0;
468+
469+
/* Don't clobber errno. */
470+
saved_errno = errno;
471+
472+
if (handle->fd < 0) {
473+
uv_err_new(handle->loop, EINVAL);
474+
rv = -1;
475+
goto out;
476+
}
477+
478+
/* sizeof(socklen_t) != sizeof(int) on some systems. */
479+
socklen = (socklen_t)*namelen;
480+
481+
if (getsockname(handle->fd, name, &socklen) == -1) {
482+
uv_err_new(handle->loop, errno);
483+
rv = -1;
484+
} else {
485+
*namelen = (int)socklen;
486+
}
487+
488+
out:
489+
errno = saved_errno;
490+
return rv;
491+
}
492+
493+
463494
int uv_udp_send(uv_udp_send_t* req,
464495
uv_udp_t* handle,
465496
uv_buf_t bufs[],

‎deps/uv/src/win/cares.c‎

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,8 @@ static void CALLBACK uv_ares_socksignal_tp(void* parameter,
9595
/* periodically call ares to check for timeouts */
9696
static void uv_ares_poll(uv_timer_t* handle, int status) {
9797
uv_loop_t* loop = handle->loop;
98-
if (loop->ares_channel != NULL && loop->ares_active_sockets > 0) {
99-
ares_process_fd(loop->ares_channel, ARES_SOCKET_BAD, ARES_SOCKET_BAD);
98+
if (loop->ares_chan != NULL && loop->ares_active_sockets > 0) {
99+
ares_process_fd(loop->ares_chan, ARES_SOCKET_BAD, ARES_SOCKET_BAD);
100100
}
101101
}
102102

@@ -214,7 +214,7 @@ static void uv_ares_sockstate_cb(void *data, ares_socket_t sock, int read,
214214
/* called via uv_poll when ares completion port signaled */
215215
void uv_process_ares_event_req(uv_loop_t* loop, uv_ares_action_t* handle,
216216
uv_req_t* req) {
217-
ares_process_fd(loop->ares_channel,
217+
ares_process_fd(loop->ares_chan,
218218
handle->read ? handle->sock : INVALID_SOCKET,
219219
handle->write ? handle->sock : INVALID_SOCKET);
220220

@@ -258,7 +258,7 @@ int uv_ares_init_options(uv_loop_t* loop,
258258
int rc;
259259

260260
/* only allow single init at a time */
261-
if (loop->ares_channel != NULL) {
261+
if (loop->ares_chan != NULL) {
262262
return UV_EALREADY;
263263
}
264264

@@ -272,7 +272,7 @@ int uv_ares_init_options(uv_loop_t* loop,
272272

273273
/* if success, save channel */
274274
if (rc == ARES_SUCCESS) {
275-
loop->ares_channel = *channelptr;
275+
loop->ares_chan = *channelptr;
276276
}
277277

278278
return rc;
@@ -282,8 +282,8 @@ int uv_ares_init_options(uv_loop_t* loop,
282282
/* release memory */
283283
void uv_ares_destroy(uv_loop_t* loop, ares_channel channel) {
284284
/* only allow destroy if did init */
285-
if (loop->ares_channel != NULL) {
285+
if (loop->ares_chan != NULL) {
286286
ares_destroy(channel);
287-
loop->ares_channel = NULL;
287+
loop->ares_chan = NULL;
288288
}
289289
}

‎deps/uv/src/win/core.c‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,7 @@ static void uv_loop_init(uv_loop_t* loop) {
6262
loop->next_idle_handle = NULL;
6363

6464
loop->ares_active_sockets = 0;
65-
loop->ares_channel = NULL;
65+
loop->ares_chan = NULL;
6666

6767
loop->last_error = uv_ok_;
6868
}

‎deps/uv/src/win/error.c‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,8 @@ uv_err_code uv_translate_sys_error(int sys_errno) {
117117
case ERROR_NETWORK_UNREACHABLE: return UV_ENETUNREACH;
118118
case WSAENETUNREACH: return UV_ENETUNREACH;
119119
case ERROR_OUTOFMEMORY: return UV_ENOMEM;
120+
case ERROR_NOT_CONNECTED: return UV_ENOTCONN;
121+
case WSAENOTCONN: return UV_ENOTCONN;
120122
case ERROR_NOT_SUPPORTED: return UV_ENOTSUP;
121123
case ERROR_INSUFFICIENT_BUFFER: return UV_EINVAL;
122124
case ERROR_INVALID_FLAGS: return UV_EBADF;

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL