aboutsummaryrefslogtreecommitdiff
path: root/test/test-tcp-bind-error.c
Commit message (Collapse)AuthorAge
* test: switch to new-style ASSERT_EQ macros (#4159)Pleuvens2023-10-06
| | | | | | | 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
* test: silence more valgrind warnings (#3917)Trevor Norris2023-03-12
| | | | | | | | | | 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.
* tcp,pipe: fail `bind` or `listen` after `close` (#3641)theanarkh2022-06-11
| | | | | | Return `UV_EINVAL` in `bind` and `listen` when `handle` is `UV_HANDLE_CLOSING` or `UV_HANDLE_CLOSED`. Fixes: https://github.com/libuv/libuv/issues/3503
* test: move to ASSERT_NULL and ASSERT_NOT_NULL test macrostjarlama2021-02-14
| | | | | | | | | | | | | Moving to new style test macros will make debugging easier in case of test failure and improve redability. This commit will replace all ASSERT macros matching the statement: `ASSERT(identifier (== or !=) value);` to: `ASSERT_(NOT_)NULL(identifier);` Refs: https://github.com/libuv/libuv/issues/2974 PR-URL: https://github.com/libuv/libuv/pull/3081 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
* unix,win: more uv_read_start() argument validationBen Noordhuis2020-11-05
| | | | | | | | | | | Return `UV_EINVAL` when one or more arguments are NULL. Fixes: https://github.com/libuv/help/issues/137 PR-URL: https://github.com/libuv/libuv/pull/2795 Reviewed-By: Jameson Nash <vtjnash@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Bartosz Sosnowski <bartosz@janeasystems.com>
* unix: report bind error in uv_tcp_connect()Ben Noordhuis2020-10-27
| | | | | | | | | | | | | Fix a bug where libuv forgets about EADDRINUSE errors reported earlier: uv_tcp_bind() + uv_tcp_connect() seemingly succeed but the socket isn't actually bound to the requested address. This bug goes back to at least 2011 if indeed it ever worked at all. PR-URL: https://github.com/libuv/libuv/pull/2218 Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Jameson Nash <vtjnash@gmail.com>
* tcp: add uv_tcp_close_reset methodSantiago Gimeno2019-08-19
| | | | | | | | | | | | | It resets a TCP connection by sending a RST packet. Due to some platform inconsistencies, mixing of `uv_shutdown` and `uv_tcp_close_reset` calls is not allowed. Fixes: https://github.com/libuv/libuv/issues/1991 PR-URL: https://github.com/libuv/libuv/pull/2425 Reviewed-By: Anna Henningsen <anna@addaleax.net> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
* Revert "Revert "unix,tcp: avoid marking server sockets connected""Jameson Nash2018-02-25
| | | | | | | This reverts commit 20987732434cdd0a11c4b86437a706509907d39c. PR-URL: https://github.com/libuv/libuv/pull/1741 Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
* Revert "unix,tcp: avoid marking server sockets connected"Ben Noordhuis2018-01-19
| | | | | | | | | | | | | | | | | Reverted for breaking Node.js in rather spectacular fashion. The bug is arguably on the Node.js side. It looks like Node.js starts reading before the socket is actually connected to something. Until that is fixed downstream, let's revert the change. This reverts commit fd049399aa4ed8495928e375466970d98cb42e17. Fixes: https://github.com/libuv/libuv/issues/1716 Fixes: https://github.com/nodejs/node/issues/18225 PR-URL: https://github.com/libuv/libuv/pull/1717 Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com> Reviewed-By: Saúl Ibarra Corretgé <saghul@gmail.com>
* unix,tcp: avoid marking server sockets connectedJameson Nash2017-12-20
| | | | | | | | | It shouldn't be setting READABLE and WRITABLE on the socket server, since they aren't, and this could confuse the client. PR-URL: https://github.com/libuv/libuv/pull/1655 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
* unix, windows: validate flags on uv_udp|tcp_bindSaúl Ibarra Corretgé2014-04-22
| | | | fixes #1247
* tcp: uv_tcp_dualstack()Fedor Indutny2014-01-19
| | | | | Explicitly disable/enable dualstack depending on presence of flag set by uv_tcp_dualstack() function.
* test: wrap long lines at 80 columnsBen Noordhuis2013-09-11
|
* include: merge uv_tcp_bind and uv_tcp_bind6Ben Noordhuis2013-09-04
| | | | | Merge uv_tcp_bind6() into uv_tcp_bind(). uv_tcp_bind() now takes a const struct sockaddr*.
* include: uv_tcp_bind{6} now takes sockaddr_in*Ben Noordhuis2013-09-01
| | | | | | | | 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.
* include: uv_ip[46]_addr now takes sockaddr_in*Ben Noordhuis2013-09-01
| | | | | | | | 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.
* unix, windows: return error codes directlyBen Noordhuis2013-07-07
| | | | | | | | | | | | | | | | | | | | | | This commit changes the libuv API to return error codes directly rather than storing them in a loop-global field. A code snippet like this one: if (uv_foo(loop) < 0) { uv_err_t err = uv_last_error(loop); fprintf(stderr, "%s\n", uv_strerror(err)); } Should be rewritten like this: int err = uv_foo(loop); if (err < 0) fprintf(stderr, "%s\n", uv_strerror(err)); The rationale for this change is that it should make creating bindings for other languages a lot easier: dealing with struct return values is painful with most FFIs and often downright buggy.
* unix, windows: make uv_*_bind() error codes consistentAndrius Bentkus2013-01-18
| | | | | Just like uv_tcp_connect() it should return an EINVAL when the handle is of an invalid type or when the network address is faulty.
* unix, windows: rename uv_run2 to uv_runnode-v0.9.7Ben Noordhuis2013-01-16
| | | | | | | | | | | | | | This changes the prototype of uv_run() from: int uv_run(uv_loop_t* loop); To: int uv_run(uv_loop_t* loop, uv_run_mode mode); Where `mode` is UV_RUN_DEFAULT, UV_RUN_ONCE or UV_RUN_NOWAIT. Fixes #683.
* test: move loop cleanup code to the individual testsBert Belder2012-10-17
|
* Remove uv_init calls from tests and benchmarksBert Belder2011-09-12
|
* bring back uv_initBert Belder2011-08-31
|
* unix: multiplicityRyan Dahl2011-08-31
|
* merge uv_tcp_listen and uv_pipe_listen into uv_listenIgor Zinkovsky2011-07-22
|
* Add uv_pipe_bind testsIgor Zinkovsky2011-07-21