libuv/test
Anna Henningsen 0d6525acae core: add getter/setter functions for easier ABI compat
Add getter/setter functions for the fields of public structs that
might be relevant to e.g. Node.js addons.

Through these methods, ABI compatibility for a subset of the ABI
is easier to achieve, since using them makes code independent
of the exact offsets of these fields.

The intended use case that prompted this are N-API addons for
Node.js, which look for more long-term ABI compatibility guarantees
than typical Node code. With these helper functions, using libuv
directly should no longer be an obstacle for such addons.

PR-URL: https://github.com/libuv/libuv/pull/1657
Refs: https://github.com/nodejs/node/issues/13512
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
Reviewed-By: Santiago Gimeno <santiago.gimeno@gmail.com>
2017-12-02 09:51:25 +01:00
..
fixtures win, unix: add uv_dlerror() and uv_dlerror_free() 2012-03-02 16:39:21 +01:00
benchmark-async-pummel.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-fs-stat.c unix,windows: allow NULL loop for sync fs requests 2015-08-18 15:39:21 +02:00
benchmark-getaddrinfo.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-list.h bench: add 'million async handles' benchmark 2012-12-24 12:19:10 +01:00
benchmark-loop-count.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-million-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-million-timers.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-multi-accept.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
benchmark-ping-pongs.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-pound.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-pump.c test: fix -Wstrict-prototypes warnings 2017-10-05 22:26:55 +02:00
benchmark-sizes.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-spawn.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
benchmark-tcp-write-batch.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
benchmark-thread.c Make the thread_create benchmark not time out 2012-03-09 17:53:48 +01:00
benchmark-udp-pummel.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
blackhole-server.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
dns-server.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
echo-server.c unix,windows: allow NULL loop for sync fs requests 2015-08-18 15:39:21 +02:00
run-benchmarks.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
run-tests.c unix: keep track of bound sockets sent via spawn 2017-11-20 18:36:26 +01:00
runner-unix.c unix,benchmark: use fd instead of FILE* after fork 2017-06-23 09:41:02 +02:00
runner-unix.h Add copyright headers, license file. 2011-04-18 11:11:30 -07:00
runner-win.c win, test: remove surplus CloseHandle 2017-09-06 09:26:58 -04:00
runner-win.h win: use the MSVC provided snprintf where possible 2015-09-29 09:01:33 +02:00
runner.c test: no extra new line in skipped test output 2017-11-06 09:33:40 -05:00
runner.h test: improve formatting of diagnostic messages 2016-06-10 10:08:13 +02:00
task.h test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-active.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-async-null-cb.c sunos: fix cmpxchgi and cmpxchgl type error 2017-07-01 00:24:42 +02:00
test-async.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-barrier.c Revert "test: make barrier test more rigorous" 2014-07-02 00:16:50 +02:00
test-callback-order.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-callback-stack.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-close-fd.c unix: set non-block mode in uv_{pipe,tcp,udp}_open 2015-01-14 19:46:54 +01:00
test-close-order.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-condvar.c test: fix deadlocks in uv_cond_wait 2016-03-03 09:29:39 +01:00
test-connection-fail.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-cwd-and-chdir.c test: fix cwd_and_chdir test on Unix 2014-12-16 08:12:46 +01:00
test-default-loop-close.c test: add test for closing and recreating default loop 2014-09-15 21:34:09 +02:00
test-delayed-accept.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-dlerror.c win: include filename in dlopen error message 2017-07-13 23:06:11 +02:00
test-eintr-handling.c test: fixup eintr_handling 2016-01-06 08:30:49 +01:00
test-embed.c build: GNU/kFreeBSD support 2016-08-20 08:55:30 +02:00
test-emfile.c zos: add support for new platform 2016-08-19 01:34:29 +02:00
test-env-vars.c unix: return UV_EINVAL for NULL env name 2017-03-14 08:28:46 +01:00
test-error.c win: define ERROR_ELEVATION_REQUIRED for MinGW 2017-01-30 12:07:14 -05:00
test-fail-always.c Benchmark runner 2011-04-19 04:47:21 +02:00
test-fork.c zos: skip fork_threadpool_queue_work_simple 2017-10-17 22:34:07 +02:00
test-fs-copyfile.c unix: truncate destination in uv_fs_copyfile() 2017-09-20 09:19:44 -04:00
test-fs-event.c test: factor out fsevents skip explanation 2017-05-21 16:12:08 +02:00
test-fs-poll.c unix, win: consistently null-terminate buffers 2016-03-03 09:20:41 +01:00
test-fs.c win: remove unused variable in test/test-fs.c 2017-11-18 13:12:06 +01:00
test-get-currentexe.c linux: fix uv_exepath(size=1) UV_EINVAL error 2015-01-03 23:40:31 +01:00
test-get-loadavg.c test: fix -Wtautological-pointer-compare warnings 2015-11-18 22:37:16 +01:00
test-get-memory.c Tests: don't use %zu placeholder in printf statements 2012-04-11 22:54:02 +02:00
test-get-passwd.c test: handle root home directories 2016-04-08 11:08:46 -04:00
test-getaddrinfo.c win: fix free() on bad input in uv_getaddrinfo() 2017-01-08 16:29:37 -05:00
test-gethostname.c unix,win: add uv_os_gethostname() 2017-05-18 10:27:47 -04:00
test-getnameinfo.c test: fix -Wtautological-pointer-compare warnings 2015-11-18 22:37:16 +01:00
test-getsockname.c unix, win: add send_queue_size and send_queue_count to uv_udp_t 2014-07-04 18:28:18 +02:00
test-getters-setters.c core: add getter/setter functions for easier ABI compat 2017-12-02 09:51:25 +01:00
test-handle-fileno.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-homedir.c test: handle root home directories 2016-04-08 11:08:46 -04:00
test-hrtime.c test: allow 80 ms intervals in hrtime test 2012-07-03 22:33:10 +02:00
test-idle.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-ip4-addr.c test: remove C++ style comment 2013-12-13 22:37:14 +04:00
test-ip6-addr.c unix,win: add uv_if_{indextoname,indextoiid} 2017-11-06 09:54:47 -05:00
test-ipc-send-recv.c cygwin: disable non-functional ipc handle send 2017-05-21 16:12:28 +02:00
test-ipc.c unix,stream: return error on closed handle passing 2017-06-23 09:38:15 +02:00
test-list.h core: add getter/setter functions for easier ABI compat 2017-12-02 09:51:25 +01:00
test-loop-alive.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-loop-close.c Revert "unix,win: wait for threads to start" 2017-11-30 02:24:22 +01:00
test-loop-configure.c linux: fix epoll_pwait() sigmask size calculation 2014-12-25 14:37:02 +01:00
test-loop-handles.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-loop-stop.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-loop-time.c windows: add uv_backend_timeout 2014-08-04 23:18:38 +02:00
test-multiple-listen.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-mutexes.c unix,win: add uv_mutex_init_recursive() 2017-10-02 10:01:09 -04:00
test-osx-select.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-pass-always.c Benchmark runner 2011-04-19 04:47:21 +02:00
test-ping-pong.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-pipe-bind-error.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-close-stdout-read-stdin.c test: fix race condition in pipe-close-stdout 2016-01-21 09:08:41 +01:00
test-pipe-connect-error.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-pipe-connect-multiple.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-connect-prepare.c unix: don't block for io if any io handle is primed 2015-05-12 07:37:26 +02:00
test-pipe-getsockname.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-pending-instances.c win: fix setting pipe pending instances after bind 2015-08-24 23:20:35 +02:00
test-pipe-sendmsg.c cygwin: disable non-functional ipc handle send 2017-05-21 16:12:28 +02:00
test-pipe-server-close.c test: skip self-connecting tests on cygwin 2017-05-21 16:12:30 +02:00
test-pipe-set-fchmod.c pipe: allow access from other users 2017-11-06 15:45:00 +01:00
test-pipe-set-non-blocking.c test: fix race condition in multithreaded test 2015-03-11 15:42:34 +01:00
test-platform-output.c unix,win: add uv_os_getpid() 2017-11-30 20:11:21 -05:00
test-poll-close-doesnt-corrupt-stack.c test: silence build warnings 2016-06-03 01:18:17 +02:00
test-poll-close.c code style: strip trailing whitespace 2013-12-20 19:38:37 -08:00
test-poll-closesocket.c test: silence build warnings 2016-06-03 01:18:17 +02:00
test-poll-oob.c poll: add support for OOB TCP and GPIO interrupts 2017-07-12 23:04:34 +02:00
test-poll.c netbsd: disable poll_bad_fdtype on NetBSD 2017-10-02 09:23:22 -04:00
test-process-title.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-queue-foreach-delete.c unix: fix uv_fs_event_stop() from fs_event_cb 2015-12-08 10:03:01 +01:00
test-ref.c test: factor out fsevents skip explanation 2017-05-21 16:12:08 +02:00
test-run-nowait.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-run-once.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-semaphore.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-shutdown-close.c unix, windows: make uv_is_*() always return 0 or 1 2013-09-12 13:30:06 +02:00
test-shutdown-eof.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-shutdown-twice.c unix,test: deadstore fixes 2017-04-05 09:57:20 -04:00
test-signal-multiple-loops.c test: clean up semaphore after use 2017-09-25 22:43:44 +02:00
test-signal.c signal: add uv_signal_start_oneshot method 2017-02-28 14:16:54 +01:00
test-socket-buffer-size.c unix, windows: add uv_recv_buffer_size and uv_send_buffer_size 2014-08-09 11:36:35 +02:00
test-spawn.c core: add getter/setter functions for easier ABI compat 2017-12-02 09:51:25 +01:00
test-stdio-over-pipes.c unix: sanity-check fds before closing 2013-10-01 03:55:54 +02:00
test-tcp-alloc-cb-fail.c unix,win: make on_alloc_cb failures more resilient 2016-08-17 09:57:55 +02:00
test-tcp-bind6-error.c test: skip ipv6 tests when ipv6 is not supported 2014-12-29 17:14:48 +01:00
test-tcp-bind-error.c unix, windows: validate flags on uv_udp|tcp_bind 2014-04-22 22:57:01 +02:00
test-tcp-close-accept.c test: close server before initiating new connection 2016-07-18 10:22:36 +01:00
test-tcp-close-while-connecting.c test: fix tcp_close_while_connecting CI failures 2016-10-14 01:57:15 +02:00
test-tcp-close.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-tcp-connect6-error.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-error-after-write.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-error.c include: merge uv_tcp_connect and uv_tcp_connect6 2013-09-04 03:16:36 +02:00
test-tcp-connect-timeout.c tests: skip some tests when network is unreachable 2015-07-13 10:28:46 +02:00
test-tcp-create-socket-early.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-tcp-flags.c unix, windows: rename uv_run2 to uv_run 2013-01-16 23:35:29 +01:00
test-tcp-oob.c zos, test: flush out the oob data in callback 2017-08-21 13:11:35 +02:00
test-tcp-open.c win: allow bound/connected socket in uv_tcp_open() 2017-08-08 17:19:20 +02:00
test-tcp-read-stop.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-shutdown-after-write.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-try-write.c stream: support empty uv_try_write on unix 2015-10-04 18:06:08 -04:00
test-tcp-unexpected-read.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-tcp-write-after-connect.c unix: fix tcp write after bad connect freezing 2014-08-21 16:23:43 +02:00
test-tcp-write-fail.c win, test: fix compilation warning 2015-09-29 09:57:27 +02:00
test-tcp-write-queue-order.c test: fix flaky tcp-write-queue-order 2017-05-17 18:56:59 +02:00
test-tcp-write-to-half-open-connection.c tcp: uv_tcp_dualstack() 2014-01-19 23:07:42 +00:00
test-tcp-writealot.c test: fix test-tcp-writealot flakiness on arm 2016-09-12 08:33:41 +02:00
test-thread-equal.c unix, windows: add uv_thread_equal 2014-10-20 09:51:49 +02:00
test-thread.c win: issue memory barrier in uv_thread_join() 2017-11-20 20:59:33 +01:00
test-threadpool-cancel.c test: fix -Wformat warning 2017-02-08 12:47:50 +01:00
test-threadpool.c unix, windows: return error codes directly 2013-07-07 09:51:00 +02:00
test-timer-again.c test: remove LOG and LOGF variadic macros 2015-04-12 18:44:34 +02:00
test-timer-from-check.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-timer.c win: wait for full timeout duration 2015-12-16 12:08:46 +01:00
test-tmpdir.c test: add missing copyright header 2016-03-24 13:17:31 -04:00
test-tty.c test: fix VC++ compilation warning 2017-05-01 14:44:28 -04:00
test-udp-alloc-cb-fail.c unix,win: make on_alloc_cb failures more resilient 2016-08-17 09:57:55 +02:00
test-udp-bind.c unix, windows: do not set SO_REUSEADDR by default on udp 2014-04-02 01:21:35 +02:00
test-udp-create-socket-early.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00
test-udp-dgram-too-big.c include: merge uv_udp_send and uv_udp_send6 2013-09-04 03:17:29 +02:00
test-udp-ipv6.c test: add NetBSD support to test-udp-ipv6.c 2017-09-23 20:26:02 -04:00
test-udp-multicast-interface6.c build: GNU/kFreeBSD support 2016-08-20 08:55:30 +02:00
test-udp-multicast-interface.c tests: skip some tests when network is unreachable 2015-07-13 10:28:46 +02:00
test-udp-multicast-join6.c test: fix udp_multicast_join6 on NetBSD 2017-10-02 09:38:20 -04:00
test-udp-multicast-join.c tests: skip some tests when network is unreachable 2015-07-13 10:28:46 +02:00
test-udp-multicast-ttl.c tests: skip some tests when network is unreachable 2015-07-13 10:28:46 +02:00
test-udp-open.c unix, win: prevent replacing fd in uv_{udp,tcp,pipe}_t 2015-06-19 09:36:41 +02:00
test-udp-options.c zos: add support for new platform 2016-08-19 01:34:29 +02:00
test-udp-send-and-recv.c unix, win: add send_queue_size and send_queue_count to uv_udp_t 2014-07-04 18:28:18 +02:00
test-udp-send-hang-loop.c test: add test for uv_udp_send() fix 2017-04-20 18:10:43 -04:00
test-udp-send-immediate.c unix,test: deadstore fixes 2017-04-05 09:57:20 -04:00
test-udp-send-unreachable.c windows: fix buffer leak after failed udp send 2014-08-28 08:41:43 +02:00
test-udp-try-send.c win,udp: implements uv_udp_try_send 2017-07-01 17:20:15 +02:00
test-walk-handles.c unix, windows: removed unused status parameter 2014-03-17 21:42:36 +01:00
test-watcher-cross-stop.c cygwin: implement support for cygwin and msys2 2017-05-21 16:12:21 +02:00