#
011a1ac1 |
| 06-Oct-2023 |
Pleuvens |
test: switch to new-style ASSERT_EQ macros (#4159) Switch from old-style ASSERT macro to new-style ASSERT_EQ,... macros. Using new-style macros makes it easier to debug test failure
test: switch to new-style ASSERT_EQ macros (#4159) Switch from old-style ASSERT macro to new-style ASSERT_EQ,... macros. Using new-style macros makes it easier to debug test failures Fixes: https://github.com/libuv/libuv/issues/2974
show more ...
|
#
91a7e498 |
| 12-Mar-2023 |
Trevor Norris |
test: silence more valgrind warnings (#3917) Pass the loop to MAKE_VALGRIND_HAPPY() so it's explicit on which loop needs to be cleaned up. Since it asserts on uv_loop_close(), need to
test: silence more valgrind warnings (#3917) Pass the loop to MAKE_VALGRIND_HAPPY() so it's explicit on which loop needs to be cleaned up. Since it asserts on uv_loop_close(), need to remove a couple of those that were being done before the call. Cleanup where loop was assigned, so the entire test either uses loop or uv_default_loop(). Not both. Also take care of any reqs that may have been left uncleaned.
show more ...
|
#
038086dc |
| 08-Feb-2022 |
Ben Noordhuis |
test: remove flaky test ipc_closed_handle (#3464) The test is very flaky, both on the CI and on people's local machines. I spent some time trying to fix it but its design is fairly
test: remove flaky test ipc_closed_handle (#3464) The test is very flaky, both on the CI and on people's local machines. I spent some time trying to fix it but its design is fairly questionable and it fails to test what it should more often than not because on fast machines no queueing of data takes place. Fixes #2307.
show more ...
|
#
99eb736b |
| 10-Jun-2021 |
Jameson Nash |
win,tcp: make uv_close work more like unix This is an attempt to fix some resource management issues on Windows. Win32 sockets have an issue where it sends an RST packet if there is
win,tcp: make uv_close work more like unix This is an attempt to fix some resource management issues on Windows. Win32 sockets have an issue where it sends an RST packet if there is an outstanding overlapped calls. We can avoid that by being certain to explicitly cancel our read and write requests first. This also removes some conditional cleanup code, since we might as well clean it up eagerly (like unix). Otherwise, it looks to me like these might cause the accept callbacks to be run after the endgame had freed the memory for them. The comment here seems mixed up between send and recv buffers. The default behavior on calling `closesocket` is already to do a graceful shutdown (see https://docs.microsoft.com/en-us/windows/win32/api/winsock/nf-winsock-closesocket with default l_onoff=zero) if it is the last open handle. The expected behavior if there are pending reads in flight is to send an RST packet, notifying the client that the server connection was destroyed before acknowledging the EOF. Additionally, we need to cancel writes explicitly: we need to notify Win32 that it is okay to cancel these writes (so it doesn't also generate an RST packet on the wire). Refs: https://github.com/libuv/libuv/pull/3035 Refs: https://github.com/nodejs/node/pull/35946 Refs: https://github.com/nodejs/node/issues/35904 Fixes: https://github.com/libuv/libuv/issues/3034 PR-URL: https://github.com/libuv/libuv/pull/3036 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
Revision tags: v1.41.0, v1.40.0 |
|
#
97a90330 |
| 20-Sep-2020 |
gengjiawen |
build: add asan checks Fixes: https://github.com/libuv/libuv/issues/2999 PR-URL: https://github.com/libuv/libuv/pull/2998 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed
build: add asan checks Fixes: https://github.com/libuv/libuv/issues/2999 PR-URL: https://github.com/libuv/libuv/pull/2998 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
show more ...
|
Revision tags: v1.39.0, v1.38.1, v1.38.0, v1.37.0, v1.36.0 |
|
#
53caf044 |
| 14-Mar-2020 |
Santiago Gimeno |
test: add a bunch of ASSERT macros To make the debugging of test issues easier. The following integer macros are added: `ASSERT_EQ(a, b)`, `ASSERT_GE(a, b)`, `ASSERT_GT(a,
test: add a bunch of ASSERT macros To make the debugging of test issues easier. The following integer macros are added: `ASSERT_EQ(a, b)`, `ASSERT_GE(a, b)`, `ASSERT_GT(a, b)`, `ASSERT_LE(a, b)`, `ASSERT_LT(a, b)` and `ASSERT_NE(a, b)`. And its corresponding unsigned integer macros: `ASSERT_UINT64_EQ(a, b)`, `ASSERT_UINT64_GE(a, b)`, `ASSERT_UINT64_GT(a, b)`, `ASSERT_UINT64_LE(a, b)`, `ASSERT_UINT64_LT(a, b)` and `ASSERT_UINT64_NE(a, b)`. Also these macros for `NULL` and pointer checks: `ASSERT_NULL(a)`, `ASSERT_NOT_NULL(a)`, `ASSERT_PTR_EQ(a, b)` and `ASSERT_PTR_NE(a, b)`. And finally these macros for strings and buffers: `ASSERT_STR_EQ(a, b)`/`ASSERT_STR_NEQ(a, b)` that use the `strcmp()` call. `ASSERT_MEM_EQ(a, b)`/`ASSERT_MEM_NEQ(a, b)` and `ASSERT_MEM_HEX_EQ(a, b)`/`ASSERT_MEM_HEX_NEQ(a, b)` that use the `memcmp()` call. The former, prints the data in string format and the latter in hex format. These macros are used in the following way: ```c ASSERT_EQ(UV_EINVAL, uv_loop_close(&loop)); ``` With a sample output that would be as follows: ``` Assertion failed in test/test-loop-close.c on line 44: `UV_EINVAL == uv_loop_close(&loop)` (-22 == -16) ``` To view multiples examples if their use, the `test-ipc.c` file has been modified to use these macros. The `_ISOC99_SOURCE` is defined to support `inttypes.h` in `z/OS`. PR-URL: https://github.com/libuv/libuv/pull/2739 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Richard Lau <riclau@uk.ibm.com>
show more ...
|
Revision tags: v1.35.0, v1.34.2, v1.34.1, v1.34.0, v1.33.1, v1.33.0, v1.32.0, v1.31.0, v1.30.1, v1.30.0 |
|
#
faa80060 |
| 16-Jun-2019 |
Nhan Khong |
test: fix gcc 8 warnings for tests In test-ipc.c, remove unnecessarily casting uv_stream_s to uv_pipe_s that makes gcc complain about stric-aliasing (-Wstrict-aliasing). In
test: fix gcc 8 warnings for tests In test-ipc.c, remove unnecessarily casting uv_stream_s to uv_pipe_s that makes gcc complain about stric-aliasing (-Wstrict-aliasing). In test-queue-foreach-delete.c, using C99 variadic macros to fix a gcc 8 warnings (-Wcast-function-type). PR-URL: https://github.com/libuv/libuv/pull/2344 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
show more ...
|
Revision tags: v1.29.1, v1.29.0, v1.28.0, v1.27.0 |
|
#
7f2d5bc3 |
| 21-Feb-2019 |
Andrew Paprocki |
test,sunos: test-ipc.c lacks newline at EOF The Studio compiler issues a warning because the source file lacks a newline at the end of the file. PR-URL: https://github.com/libuv
test,sunos: test-ipc.c lacks newline at EOF The Studio compiler issues a warning because the source file lacks a newline at the end of the file. PR-URL: https://github.com/libuv/libuv/pull/2200 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
show more ...
|
Revision tags: v1.26.0, v1.25.0 |
|
#
6140507b |
| 16-Jan-2019 |
Santiago Gimeno |
unix,stream: fix zero byte writes Fixes a regression where a write request to write a zero byte buffer would never complete. Refs: https://github.com/libuv/libuv/pull/2097 R
unix,stream: fix zero byte writes Fixes a regression where a write request to write a zero byte buffer would never complete. Refs: https://github.com/libuv/libuv/pull/2097 Refs: https://github.com/libuv/libuv/issues/2134 PR-URL: https://github.com/libuv/libuv/pull/2149 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
show more ...
|
#
1698be72 |
| 11-Jan-2019 |
Santiago Gimeno |
test: fix test-ipc tests A couple of ipc tests failures where undercover by the previous commit. - In `ipc-heavy-traffic-deadlock-bug`, `uv_shutdown` can fail with `UV_ENOTCON
test: fix test-ipc tests A couple of ipc tests failures where undercover by the previous commit. - In `ipc-heavy-traffic-deadlock-bug`, `uv_shutdown` can fail with `UV_ENOTCONN`. Allow it. - `ipc_closed_handle` was failing consistently on `Centos6` because the first large write was completed in just one syscall. Also, there were issues with the lifetime of the `uv_write_t` requests. Refactor the test so it passes consistently on `Centos6` while fixing the `uv_write_t` issues. PR-URL: https://github.com/libuv/libuv/pull/2108 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
show more ...
|
Revision tags: v1.24.1 |
|
#
0c9586a6 |
| 07-Dec-2018 |
Santiago Gimeno |
test: fix test-ipc spawn_helper exit_cb Make sure an ipc test fails if `term_signal` is not zero. This can happen on failing assertions in the child process. PR-URL: https://git
test: fix test-ipc spawn_helper exit_cb Make sure an ipc test fails if `term_signal` is not zero. This can happen on failing assertions in the child process. PR-URL: https://github.com/libuv/libuv/pull/2108 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
show more ...
|
Revision tags: v1.24.0 |
|
#
143da93e |
| 29-Oct-2018 |
Ben Noordhuis |
test,unix: fix race in test runner The test runner inserted a 250 ms delay to give helper processes time to settle. That's intrinsically race-y and caused tests to intermittently fai
test,unix: fix race in test runner The test runner inserted a 250 ms delay to give helper processes time to settle. That's intrinsically race-y and caused tests to intermittently fail on platforms like AIX. Instead of a fixed delay, pass a file descriptor to the helper process and wait until it closes the descriptor. That way we know for sure the process has started. Incidentally, this change reduces the running time of the test suite from 112 to 26 seconds on my machine. Fixes: https://github.com/libuv/libuv/issues/2041 PR-URL: https://github.com/libuv/libuv/pull/2056 Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
Revision tags: v1.23.2, v1.23.1, v1.23.0, v1.22.0, v1.21.0 |
|
#
b6eb3cef |
| 21-May-2018 |
Bert Belder |
test: improve output from IPC test helpers PR-URL: https://github.com/libuv/libuv/pull/1843 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Bartosz Sosnowski <bartosz@j
test: improve output from IPC test helpers PR-URL: https://github.com/libuv/libuv/pull/1843 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com> Reviewed-By: Gireesh Punathil <gpunathi@in.ibm.com>
show more ...
|
Revision tags: v1.20.3, v1.20.2, v1.20.1, v1.20.0, v1.19.2, v1.19.1, v1.19.0, v1.18.0, v1.17.0, v1.16.1, v1.16.0, v1.15.0, v1.14.1, v1.14.0, v1.13.1, v1.13.0, v1.12.0 |
|
#
404ee427 |
| 14-May-2017 |
Santiago Gimeno |
unix,stream: return error on closed handle passing Return `EBADF` when trying to send a handle which, while enqueued, was closed. Fixes: https://github.com/libuv/libuv/issues/80
unix,stream: return error on closed handle passing Return `EBADF` when trying to send a handle which, while enqueued, was closed. Fixes: https://github.com/libuv/libuv/issues/806 PR-URL: https://github.com/libuv/libuv/pull/1352 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
show more ...
|
#
580f0327 |
| 11-Apr-2017 |
Brad King |
cygwin: disable non-functional ipc handle send On Cygwin `recvmsg` always sets `msg_controllen` to zero on a message received from a named pipe. Therefore we cannot use `sendmsg` to
cygwin: disable non-functional ipc handle send On Cygwin `recvmsg` always sets `msg_controllen` to zero on a message received from a named pipe. Therefore we cannot use `sendmsg` to send handles for ipc. Return failure early from this code path as `ENOSYS`. Skip tests requiring this feature since it is not available. PR-URL: https://github.com/libuv/libuv/pull/1312 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
show more ...
|
Revision tags: v1.11.0, v1.10.2, v1.10.1, v1.10.0, v0.10.37, v1.9.1, v1.9.0, v1.8.0, v1.7.5, v1.7.4 |
|
#
57b0a6da |
| 02-Sep-2015 |
Santiago Gimeno |
test,freebsd: fix ipc_listen_xx_write tests In FreeBSD if connect is called and the queue of pending connections(backlog) is full, the call is automatically rejected with ECONNRESET. In
test,freebsd: fix ipc_listen_xx_write tests In FreeBSD if connect is called and the queue of pending connections(backlog) is full, the call is automatically rejected with ECONNRESET. In the tests, 100 connections were tried and the backlog of both servers is 12, so the error. To fix ipc_listen_before_write and ipc_listen_after_write, the backlog of the server has been increased to 128. PR-URL: https://github.com/libuv/libuv/pull/504 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
show more ...
|
Revision tags: v1.7.3, v1.7.2, v1.7.1, v1.7.0, v1.6.1, v1.6.0, v1.5.0, v0.10.36, v1.4.2, v0.10.35, v1.4.1, v0.10.34, v1.4.0, v1.3.0, v0.10.33, v1.2.1, v1.2.0, v0.10.32, v1.1.0, v0.10.31, v1.0.2, v0.10.30, v1.0.1, v1.0.0, v0.10.29, v1.0.0-rc2, v1.0.0-rc1, v0.11.29, v0.11.28, v0.11.27, v0.10.28 |
|
#
6d3a051e |
| 29-Jul-2014 |
Alexis Campailla |
windows: relay TCP bind errors via ipc This is the libuv side of the fix for Node's cluster module on Windows. https://github.com/joyent/node/issues/7691 Windows and Unix return
windows: relay TCP bind errors via ipc This is the libuv side of the fix for Node's cluster module on Windows. https://github.com/joyent/node/issues/7691 Windows and Unix return certain socket errors (i.e. EADDRINUSE) at different times: bind on Windows, and listen on Unix. In an effort to hide this difference, libuv on Windows stores such errors in the bind_error field of uv_tcp_t, to defer raising it at listen time. This worked fine except for the case in which a socket is shared in a Node cluster and a bind error occurs. A previous attempt to fix this ( https://github.com/joyent/libuv/commit/d1e6be1460f555a1f8a4063d7642696aa7238769 https://github.com/joyent/node/commit/3da36fe00e5d85414031ae812e473f16629d8645 ) was flawed becaused in an attempt to relay the error at the JS level it caused the master to start accepting connections. With this new approach, libuv itself is relaying the bind errors, providing for a uniform behavior of uv_tcp_listen.
show more ...
|
Revision tags: v0.11.26, v0.10.27, v0.11.25, v0.11.24, v0.11.23, v0.10.26, v0.11.22, v0.11.21, v0.11.20, v0.10.25, v0.11.19, v0.10.24, v0.11.18, v0.10.23, v0.10.22, v0.11.17 |
|
#
b05a3ee4 |
| 22-Dec-2013 |
Fedor Indutny |
pipe: allow queueing pending handles Introduce `int uv_pipe_pending_count(uv_pipe_t*)` and `uv_handle_type uv_pipe_pending_type(uv_pipe_t*)`. They should be used in IPC pipe's read c
pipe: allow queueing pending handles Introduce `int uv_pipe_pending_count(uv_pipe_t*)` and `uv_handle_type uv_pipe_pending_type(uv_pipe_t*)`. They should be used in IPC pipe's read cb to accept incoming handles: int count = uv_pipe_pending_count(pipe); int i; for (i = 0; i < count; i++) { uv_handle_type type = uv_pipe_pending_type(pipe); /* ... */ uv_accept(...); }
show more ...
|
Revision tags: v0.10.21, v0.11.16, v0.10.20, v0.11.15, v0.10.19, v0.11.14, v0.10.18, v0.10.17, v0.10.16, v0.11.13, v0.11.12, v0.11.11, v0.11.10, v0.10.15, v0.11.9, v0.10.14, v0.11.8, v0.11.7, v0.10.13, v0.11.6, v0.10.12, v0.11.5, v0.10.11, v0.10.10, v0.11.4, v0.10.9, v0.10.8, v0.11.3, v0.10.7, v0.10.6, v0.11.2, v0.10.5, v0.10.4, v0.11.1, node-v0.11.0, v0.10.2 |
|
#
8f15aae5 |
| 19-Mar-2013 |
Fedor Indutny |
tcp: uv_tcp_dualstack() Explicitly disable/enable dualstack depending on presence of flag set by uv_tcp_dualstack() function. |
#
d7115f06 |
| 12-Sep-2013 |
Ben Noordhuis |
unix, windows: make uv_is_*() always return 0 or 1 Ensure that the following API functions always return either 0 or 1: * uv_is_active() * uv_is_closing() * uv_is_read
unix, windows: make uv_is_*() always return 0 or 1 Ensure that the following API functions always return either 0 or 1: * uv_is_active() * uv_is_closing() * uv_is_readable() * uv_is_writable()
show more ...
|
#
5c675c4a |
| 03-Sep-2013 |
Ben Noordhuis |
include: merge uv_tcp_connect and uv_tcp_connect6 Merge uv_tcp_connect6() into uv_tcp_connect(). uv_tcp_connect() now takes a const struct sockaddr*. |
#
5fceccc5 |
| 03-Sep-2013 |
Ben Noordhuis |
include: merge uv_tcp_bind and uv_tcp_bind6 Merge uv_tcp_bind6() into uv_tcp_bind(). uv_tcp_bind() now takes a const struct sockaddr*. |
#
8c6ea105 |
| 01-Sep-2013 |
Ben Noordhuis |
include: uv_spawn takes const uv_process_options_t* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to
include: uv_spawn takes const uv_process_options_t* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to a pointer-based approach. Fixes #684.
show more ...
|
#
255671da |
| 31-Aug-2013 |
Ben Noordhuis |
include: uv_tcp_connect{6} now takes sockaddr_in* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to a
include: uv_tcp_connect{6} now takes sockaddr_in* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to a pointer-based approach. Fixes #684.
show more ...
|
#
daa229ac |
| 31-Aug-2013 |
Ben Noordhuis |
include: uv_tcp_bind{6} now takes sockaddr_in* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to a
include: uv_tcp_bind{6} now takes sockaddr_in* Passing or returning structs as values makes life hard for people that work with libuv through a foreign function interface. Switch to a pointer-based approach. Fixes #684.
show more ...
|