noderb 0.0.4 → 0.0.6
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/noderb_extension/libuv/AUTHORS +11 -1
- data/ext/noderb_extension/libuv/LICENSE +0 -8
- data/ext/noderb_extension/libuv/Makefile +5 -5
- data/ext/noderb_extension/libuv/README +11 -6
- data/ext/noderb_extension/libuv/common.gypi +158 -7
- data/ext/noderb_extension/libuv/config-unix.mk +34 -26
- data/ext/noderb_extension/libuv/gyp_uv +22 -4
- data/ext/noderb_extension/libuv/include/{eio.h → uv-private/eio.h} +2 -2
- data/ext/noderb_extension/libuv/include/{uv-unix.h → uv-private/uv-unix.h} +40 -0
- data/ext/noderb_extension/libuv/include/{uv-win.h → uv-private/uv-win.h} +96 -14
- data/ext/noderb_extension/libuv/include/uv.h +508 -83
- data/ext/noderb_extension/libuv/src/unix/cares.c +185 -0
- data/ext/noderb_extension/libuv/src/unix/core.c +828 -0
- data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_darwin.h +4 -0
- data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_linux.h +5 -15
- data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.c +23 -2
- data/ext/noderb_extension/libuv/src/unix/error.c +102 -0
- data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_linux.h +26 -15
- data/ext/noderb_extension/libuv/src/unix/fs.c +562 -0
- data/ext/noderb_extension/libuv/src/unix/internal.h +75 -0
- data/ext/noderb_extension/libuv/src/unix/pipe.c +282 -0
- data/ext/noderb_extension/libuv/src/unix/process.c +287 -0
- data/ext/noderb_extension/libuv/src/unix/stream.c +727 -0
- data/ext/noderb_extension/libuv/src/unix/tcp.c +226 -0
- data/ext/noderb_extension/libuv/src/unix/udp.c +524 -0
- data/ext/noderb_extension/libuv/src/{uv-eio.c → unix/uv-eio.c} +48 -27
- data/ext/noderb_extension/libuv/src/{uv-eio.h → unix/uv-eio.h} +1 -1
- data/ext/noderb_extension/libuv/src/uv-common.c +24 -14
- data/ext/noderb_extension/libuv/src/uv-common.h +12 -7
- data/ext/noderb_extension/libuv/src/win/async.c +14 -16
- data/ext/noderb_extension/libuv/src/win/cares.c +64 -79
- data/ext/noderb_extension/libuv/src/win/core.c +105 -53
- data/ext/noderb_extension/libuv/src/win/error.c +23 -13
- data/ext/noderb_extension/libuv/src/win/fs.c +807 -0
- data/ext/noderb_extension/libuv/src/win/getaddrinfo.c +61 -41
- data/ext/noderb_extension/libuv/src/win/handle.c +56 -30
- data/ext/noderb_extension/libuv/src/win/internal.h +134 -95
- data/ext/noderb_extension/libuv/src/win/loop-watcher.c +21 -18
- data/ext/noderb_extension/libuv/src/win/pipe.c +313 -158
- data/ext/noderb_extension/libuv/src/win/process.c +117 -131
- data/ext/noderb_extension/libuv/src/win/req.c +55 -31
- data/ext/noderb_extension/libuv/src/win/stdio.c +5 -5
- data/ext/noderb_extension/libuv/src/win/stream.c +19 -14
- data/ext/noderb_extension/libuv/src/win/tcp.c +278 -336
- data/ext/noderb_extension/libuv/src/win/threadpool.c +73 -0
- data/ext/noderb_extension/libuv/src/win/timer.c +44 -37
- data/ext/noderb_extension/libuv/src/win/udp.c +592 -0
- data/ext/noderb_extension/libuv/src/win/util.c +20 -6
- data/ext/noderb_extension/libuv/src/win/winapi.c +23 -6
- data/ext/noderb_extension/libuv/src/win/winapi.h +4206 -0
- data/ext/noderb_extension/libuv/src/win/winsock.c +270 -0
- data/ext/noderb_extension/libuv/src/win/winsock.h +134 -0
- data/ext/noderb_extension/libuv/test/benchmark-ares.c +10 -6
- data/ext/noderb_extension/libuv/test/benchmark-getaddrinfo.c +10 -7
- data/ext/noderb_extension/libuv/test/benchmark-list.h +21 -0
- data/ext/noderb_extension/libuv/test/benchmark-ping-pongs.c +11 -7
- data/ext/noderb_extension/libuv/test/benchmark-pound.c +147 -58
- data/ext/noderb_extension/libuv/test/benchmark-pump.c +29 -23
- data/ext/noderb_extension/libuv/test/benchmark-spawn.c +13 -10
- data/ext/noderb_extension/libuv/test/benchmark-udp-packet-storm.c +250 -0
- data/ext/noderb_extension/libuv/test/dns-server.c +11 -6
- data/ext/noderb_extension/libuv/test/echo-server.c +30 -22
- data/ext/noderb_extension/libuv/test/test-async.c +3 -3
- data/ext/noderb_extension/libuv/test/test-callback-stack.c +6 -6
- data/ext/noderb_extension/libuv/test/test-connection-fail.c +6 -5
- data/ext/noderb_extension/libuv/test/test-delayed-accept.c +13 -13
- data/ext/noderb_extension/libuv/test/test-fs.c +715 -0
- data/ext/noderb_extension/libuv/test/test-getaddrinfo.c +11 -8
- data/ext/noderb_extension/libuv/test/test-gethostbyname.c +8 -9
- data/ext/noderb_extension/libuv/test/test-getsockname.c +142 -16
- data/ext/noderb_extension/libuv/test/test-idle.c +4 -3
- data/ext/noderb_extension/libuv/test/test-list.h +29 -2
- data/ext/noderb_extension/libuv/test/test-loop-handles.c +9 -8
- data/ext/noderb_extension/libuv/test/test-ping-pong.c +9 -9
- data/ext/noderb_extension/libuv/test/test-pipe-bind-error.c +18 -14
- data/ext/noderb_extension/libuv/test/test-ref.c +17 -16
- data/ext/noderb_extension/libuv/test/test-shutdown-eof.c +5 -5
- data/ext/noderb_extension/libuv/test/test-spawn.c +17 -17
- data/ext/noderb_extension/libuv/test/test-tcp-bind-error.c +24 -18
- data/ext/noderb_extension/libuv/test/test-tcp-bind6-error.c +19 -14
- data/ext/noderb_extension/libuv/test/test-tcp-writealot.c +6 -5
- data/ext/noderb_extension/libuv/test/test-threadpool.c +59 -0
- data/ext/noderb_extension/libuv/test/test-timer-again.c +15 -12
- data/ext/noderb_extension/libuv/test/test-timer.c +8 -8
- data/ext/noderb_extension/libuv/test/test-udp-dgram-too-big.c +88 -0
- data/ext/noderb_extension/libuv/test/test-udp-ipv6.c +158 -0
- data/ext/noderb_extension/libuv/test/test-udp-send-and-recv.c +210 -0
- data/ext/noderb_extension/libuv/{all.gyp → uv.gyp} +75 -77
- data/ext/noderb_extension/libuv/vcbuild.bat +93 -0
- data/ext/noderb_extension/noderb.c +13 -0
- data/ext/noderb_extension/noderb_common.h +2 -1
- data/ext/noderb_extension/noderb_defer.c +54 -0
- data/ext/noderb_extension/noderb_defer.h +15 -0
- data/ext/noderb_extension/noderb_dns.c +1 -1
- data/ext/noderb_extension/noderb_fs.c +277 -0
- data/ext/noderb_extension/noderb_fs.h +27 -0
- data/ext/noderb_extension/noderb_process.c +5 -5
- data/ext/noderb_extension/noderb_tcp.c +10 -6
- data/ext/noderb_extension/noderb_timers.c +1 -1
- data/ext/noderb_extension/noderb_tools.c +42 -8
- data/ext/noderb_extension/noderb_tools.h +3 -1
- data/lib/noderb/defer.rb +25 -0
- data/lib/noderb/file.rb +119 -0
- data/lib/noderb/fs.rb +72 -0
- data/lib/noderb/version.rb +1 -1
- data/lib/noderb.rb +8 -0
- metadata +102 -266
- data/ext/noderb_extension/libuv/BSDmakefile +0 -2
- data/ext/noderb_extension/libuv/create-msvs-files.bat +0 -21
- data/ext/noderb_extension/libuv/deps/pthread-win32/ANNOUNCE +0 -482
- data/ext/noderb_extension/libuv/deps/pthread-win32/BUGS +0 -141
- data/ext/noderb_extension/libuv/deps/pthread-win32/Bmakefile +0 -268
- data/ext/noderb_extension/libuv/deps/pthread-win32/CONTRIBUTORS +0 -140
- data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING +0 -150
- data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING.LIB +0 -504
- data/ext/noderb_extension/libuv/deps/pthread-win32/ChangeLog +0 -5194
- data/ext/noderb_extension/libuv/deps/pthread-win32/FAQ +0 -451
- data/ext/noderb_extension/libuv/deps/pthread-win32/GNUmakefile +0 -593
- data/ext/noderb_extension/libuv/deps/pthread-win32/MAINTAINERS +0 -4
- data/ext/noderb_extension/libuv/deps/pthread-win32/Makefile +0 -516
- data/ext/noderb_extension/libuv/deps/pthread-win32/NEWS +0 -1245
- data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile +0 -24
- data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile.tests +0 -260
- data/ext/noderb_extension/libuv/deps/pthread-win32/PROGRESS +0 -4
- data/ext/noderb_extension/libuv/deps/pthread-win32/README +0 -601
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.Borland +0 -57
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.CV +0 -3036
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.NONPORTABLE +0 -783
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.Watcom +0 -62
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.WinCE +0 -6
- data/ext/noderb_extension/libuv/deps/pthread-win32/TODO +0 -7
- data/ext/noderb_extension/libuv/deps/pthread-win32/WinCE-PORT +0 -222
- data/ext/noderb_extension/libuv/deps/pthread-win32/attr.c +0 -53
- data/ext/noderb_extension/libuv/deps/pthread-win32/autostatic.c +0 -69
- data/ext/noderb_extension/libuv/deps/pthread-win32/barrier.c +0 -47
- data/ext/noderb_extension/libuv/deps/pthread-win32/build/all.gyp +0 -207
- data/ext/noderb_extension/libuv/deps/pthread-win32/builddmc.bat +0 -9
- data/ext/noderb_extension/libuv/deps/pthread-win32/cancel.c +0 -44
- data/ext/noderb_extension/libuv/deps/pthread-win32/cleanup.c +0 -148
- data/ext/noderb_extension/libuv/deps/pthread-win32/condvar.c +0 -50
- data/ext/noderb_extension/libuv/deps/pthread-win32/config.h +0 -153
- data/ext/noderb_extension/libuv/deps/pthread-win32/context.h +0 -74
- data/ext/noderb_extension/libuv/deps/pthread-win32/create.c +0 -308
- data/ext/noderb_extension/libuv/deps/pthread-win32/dll.c +0 -92
- data/ext/noderb_extension/libuv/deps/pthread-win32/errno.c +0 -94
- data/ext/noderb_extension/libuv/deps/pthread-win32/exit.c +0 -44
- data/ext/noderb_extension/libuv/deps/pthread-win32/fork.c +0 -39
- data/ext/noderb_extension/libuv/deps/pthread-win32/global.c +0 -107
- data/ext/noderb_extension/libuv/deps/pthread-win32/implement.h +0 -944
- data/ext/noderb_extension/libuv/deps/pthread-win32/misc.c +0 -50
- data/ext/noderb_extension/libuv/deps/pthread-win32/mutex.c +0 -62
- data/ext/noderb_extension/libuv/deps/pthread-win32/need_errno.h +0 -145
- data/ext/noderb_extension/libuv/deps/pthread-win32/nonportable.c +0 -47
- data/ext/noderb_extension/libuv/deps/pthread-win32/private.c +0 -54
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.c +0 -66
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsp +0 -142
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsw +0 -29
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.h +0 -1368
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_destroy.c +0 -79
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getdetachstate.c +0 -86
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getinheritsched.c +0 -51
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedparam.c +0 -52
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedpolicy.c +0 -61
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getscope.c +0 -54
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstackaddr.c +0 -97
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstacksize.c +0 -100
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_init.c +0 -117
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setdetachstate.c +0 -91
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setinheritsched.c +0 -57
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedparam.c +0 -63
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedpolicy.c +0 -55
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setscope.c +0 -62
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstackaddr.c +0 -97
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstacksize.c +0 -110
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_destroy.c +0 -103
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_init.c +0 -69
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_wait.c +0 -104
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_destroy.c +0 -83
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_getpshared.c +0 -95
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_init.c +0 -85
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_setpshared.c +0 -119
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cancel.c +0 -189
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_destroy.c +0 -253
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_init.c +0 -167
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_signal.c +0 -231
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_wait.c +0 -567
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_destroy.c +0 -86
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_getpshared.c +0 -97
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_init.c +0 -87
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_setpshared.c +0 -117
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_delay_np.c +0 -172
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_detach.c +0 -136
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_equal.c +0 -76
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_exit.c +0 -106
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getconcurrency.c +0 -45
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getschedparam.c +0 -75
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getspecific.c +0 -87
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getunique_np.c +0 -47
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getw32threadhandle_np.c +0 -65
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_join.c +0 -157
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_create.c +0 -108
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_delete.c +0 -125
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_kill.c +0 -105
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_consistent.c +0 -187
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_destroy.c +0 -148
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_init.c +0 -130
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_lock.c +0 -269
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_timedlock.c +0 -324
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_trylock.c +0 -154
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_unlock.c +0 -175
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_destroy.c +0 -83
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getkind_np.c +0 -44
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getpshared.c +0 -95
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getrobust.c +0 -113
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_gettype.c +0 -56
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_init.c +0 -86
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setkind_np.c +0 -44
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setpshared.c +0 -119
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setrobust.c +0 -119
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_settype.c +0 -143
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_num_processors_np.c +0 -56
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_once.c +0 -79
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_destroy.c +0 -143
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_init.c +0 -109
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_rdlock.c +0 -102
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedrdlock.c +0 -109
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedwrlock.c +0 -139
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_tryrdlock.c +0 -102
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_trywrlock.c +0 -122
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_unlock.c +0 -93
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_wrlock.c +0 -133
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_destroy.c +0 -84
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_getpshared.c +0 -97
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_init.c +0 -83
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_setpshared.c +0 -120
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_self.c +0 -141
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcancelstate.c +0 -125
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcanceltype.c +0 -126
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setconcurrency.c +0 -53
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setschedparam.c +0 -123
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setspecific.c +0 -167
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_destroy.c +0 -111
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_init.c +0 -123
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_lock.c +0 -80
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_trylock.c +0 -77
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_unlock.c +0 -71
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_testcancel.c +0 -103
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_timechange_handler_np.c +0 -108
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_win32_attach_detach_np.c +0 -258
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_MCS_lock.c +0 -278
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_callUserDestroyRoutines.c +0 -232
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_calloc.c +0 -56
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_cond_check_need_init.c +0 -78
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_getprocessors.c +0 -91
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_is_attr.c +0 -47
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_mutex_check_need_init.c +0 -92
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_new.c +0 -94
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processInitialize.c +0 -92
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processTerminate.c +0 -105
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_relmillisecs.c +0 -132
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_reuse.c +0 -151
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_cancelwrwait.c +0 -50
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_check_need_init.c +0 -77
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_semwait.c +0 -135
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_spinlock_check_need_init.c +0 -78
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadDestroy.c +0 -79
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadStart.c +0 -357
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_throw.c +0 -189
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_timespec.c +0 -83
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocCreate.c +0 -118
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocDestroy.c +0 -114
- data/ext/noderb_extension/libuv/deps/pthread-win32/rwlock.c +0 -51
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched.c +0 -53
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched.h +0 -183
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_max.c +0 -134
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_min.c +0 -135
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_getscheduler.c +0 -71
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_setscheduler.c +0 -83
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_yield.c +0 -71
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_close.c +0 -58
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_destroy.c +0 -144
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_getvalue.c +0 -110
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_init.c +0 -169
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_open.c +0 -58
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post.c +0 -128
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post_multiple.c +0 -142
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_timedwait.c +0 -238
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_trywait.c +0 -117
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_unlink.c +0 -58
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_wait.c +0 -187
- data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.c +0 -69
- data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.h +0 -169
- data/ext/noderb_extension/libuv/deps/pthread-win32/signal.c +0 -179
- data/ext/noderb_extension/libuv/deps/pthread-win32/spin.c +0 -46
- data/ext/noderb_extension/libuv/deps/pthread-win32/sync.c +0 -43
- data/ext/noderb_extension/libuv/deps/pthread-win32/tsd.c +0 -44
- data/ext/noderb_extension/libuv/deps/pthread-win32/version.rc +0 -388
- data/ext/noderb_extension/libuv/deps/pthread-win32/w32_CancelableWait.c +0 -161
- data/ext/noderb_extension/libuv/doc/iocp-links.html +0 -574
- data/ext/noderb_extension/libuv/src/uv-unix.c +0 -2421
- data/ext/noderb_extension/libuv/src/win/ntdll.h +0 -130
- /data/ext/noderb_extension/libuv/include/{ev.h → uv-private/ev.h} +0 -0
- /data/ext/noderb_extension/libuv/include/{ngx-queue.h → uv-private/ngx-queue.h} +0 -0
- /data/ext/noderb_extension/libuv/include/{tree.h → uv-private/tree.h} +0 -0
- /data/ext/noderb_extension/libuv/src/{uv-cygwin.c → unix/cygwin.c} +0 -0
- /data/ext/noderb_extension/libuv/src/{uv-darwin.c → unix/darwin.c} +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/Changes +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/LICENSE +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/Makefile.am +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/aclocal.m4 +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/autogen.sh +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config.h.in +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_cygwin.h +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_freebsd.h +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/config_sunos.h +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/configure.ac +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/demo.c +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/ecb.h +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.3 +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/eio.pod +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/libeio.m4 +0 -0
- /data/ext/noderb_extension/libuv/src/{eio → unix/eio}/xthread.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Changes +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/LICENSE +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Makefile.am +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/Makefile.in +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/README +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/aclocal.m4 +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/autogen.sh +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.guess +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.h.in +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config.sub +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_cygwin.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_darwin.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_freebsd.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/config_sunos.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/configure +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/configure.ac +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/depcomp +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev++.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.3 +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev.pod +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_epoll.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_kqueue.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_poll.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_port.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_select.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_vars.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_win32.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ev_wrap.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/event.c +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/event.h +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/install-sh +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/libev.m4 +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/ltmain.sh +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/missing +0 -0
- /data/ext/noderb_extension/libuv/src/{ev → unix/ev}/mkinstalldirs +0 -0
- /data/ext/noderb_extension/libuv/src/{uv-freebsd.c → unix/freebsd.c} +0 -0
- /data/ext/noderb_extension/libuv/src/{uv-linux.c → unix/linux.c} +0 -0
- /data/ext/noderb_extension/libuv/src/{uv-sunos.c → unix/sunos.c} +0 -0
@@ -69,14 +69,16 @@ TEST_IMPL(getaddrinfo_basic) {
|
|
69
69
|
|
70
70
|
uv_init();
|
71
71
|
|
72
|
-
|
72
|
+
|
73
|
+
r = uv_getaddrinfo(uv_default_loop(),
|
74
|
+
&getaddrinfo_handle,
|
73
75
|
&getaddrinfo_basic_cb,
|
74
76
|
name,
|
75
77
|
NULL,
|
76
78
|
NULL);
|
77
79
|
ASSERT(r == 0);
|
78
80
|
|
79
|
-
uv_run();
|
81
|
+
uv_run(uv_default_loop());
|
80
82
|
|
81
83
|
ASSERT(getaddrinfo_cbs == 1);
|
82
84
|
|
@@ -92,15 +94,16 @@ TEST_IMPL(getaddrinfo_concurrent) {
|
|
92
94
|
for (i = 0; i < CONCURRENT_COUNT; i++) {
|
93
95
|
callback_counts[i] = 0;
|
94
96
|
|
95
|
-
r = uv_getaddrinfo(
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
97
|
+
r = uv_getaddrinfo(uv_default_loop(),
|
98
|
+
&getaddrinfo_handles[i],
|
99
|
+
&getaddrinfo_cuncurrent_cb,
|
100
|
+
name,
|
101
|
+
NULL,
|
102
|
+
NULL);
|
100
103
|
ASSERT(r == 0);
|
101
104
|
}
|
102
105
|
|
103
|
-
uv_run();
|
106
|
+
uv_run(uv_default_loop());
|
104
107
|
|
105
108
|
for (i = 0; i < CONCURRENT_COUNT; i++) {
|
106
109
|
ASSERT(callback_counts[i] == 1);
|
@@ -74,8 +74,7 @@ static void prep_tcploopback() {
|
|
74
74
|
options.tcp_port = htons(TEST_PORT);
|
75
75
|
options.flags = ARES_FLAG_USEVC;
|
76
76
|
|
77
|
-
rc = uv_ares_init_options(&channel, &options, optmask);
|
78
|
-
|
77
|
+
rc = uv_ares_init_options(uv_default_loop(), &channel, &options, optmask);
|
79
78
|
ASSERT(rc == ARES_SUCCESS);
|
80
79
|
}
|
81
80
|
|
@@ -104,11 +103,11 @@ TEST_IMPL(gethostbyname) {
|
|
104
103
|
AF_INET,
|
105
104
|
&aresbynamecallback,
|
106
105
|
&bynamecallbacksig);
|
107
|
-
uv_run();
|
106
|
+
uv_run(uv_default_loop());
|
108
107
|
|
109
108
|
ASSERT(ares_bynamecallbacks == 1);
|
110
109
|
|
111
|
-
uv_ares_destroy(channel);
|
110
|
+
uv_ares_destroy(uv_default_loop(), channel);
|
112
111
|
printf("Done basic gethostbyname test\n");
|
113
112
|
|
114
113
|
|
@@ -125,7 +124,7 @@ TEST_IMPL(gethostbyname) {
|
|
125
124
|
AF_INET,
|
126
125
|
&aresbynamecallback,
|
127
126
|
&bynamecallbacksig);
|
128
|
-
uv_run();
|
127
|
+
uv_run(uv_default_loop());
|
129
128
|
|
130
129
|
ASSERT(ares_bynamecallbacks == 1);
|
131
130
|
|
@@ -143,11 +142,11 @@ TEST_IMPL(gethostbyname) {
|
|
143
142
|
&aresbyaddrcallback,
|
144
143
|
&byaddrcallbacksig);
|
145
144
|
|
146
|
-
uv_run();
|
145
|
+
uv_run(uv_default_loop());
|
147
146
|
|
148
147
|
ASSERT(ares_byaddrcallbacks == 1);
|
149
148
|
|
150
|
-
uv_ares_destroy(channel);
|
149
|
+
uv_ares_destroy(uv_default_loop(), channel);
|
151
150
|
printf("Done gethostbyname and gethostbyaddr sequential test\n");
|
152
151
|
|
153
152
|
|
@@ -179,13 +178,13 @@ TEST_IMPL(gethostbyname) {
|
|
179
178
|
&aresbyaddrcallback,
|
180
179
|
&byaddrcallbacksig);
|
181
180
|
|
182
|
-
uv_run();
|
181
|
+
uv_run(uv_default_loop());
|
183
182
|
|
184
183
|
ASSERT(ares_bynamecallbacks == 1);
|
185
184
|
ASSERT(ares_byaddrcallbacks == 1);
|
186
185
|
|
187
186
|
|
188
|
-
uv_ares_destroy(channel);
|
187
|
+
uv_ares_destroy(uv_default_loop(), channel);
|
189
188
|
printf("Done gethostbyname and gethostbyaddr concurrent test\n");
|
190
189
|
|
191
190
|
return 0;
|
@@ -22,18 +22,23 @@
|
|
22
22
|
#include "uv.h"
|
23
23
|
#include "task.h"
|
24
24
|
|
25
|
-
#include <stdlib.h>
|
26
25
|
#include <stdio.h>
|
26
|
+
#include <stdlib.h>
|
27
|
+
#include <string.h>
|
27
28
|
|
28
|
-
static int getsocknamecount = 0;
|
29
29
|
|
30
|
+
static int getsocknamecount = 0;
|
30
31
|
|
32
|
+
static uv_loop_t* loop;
|
31
33
|
static uv_tcp_t tcp;
|
34
|
+
static uv_udp_t udp;
|
32
35
|
static uv_connect_t connect_req;
|
33
36
|
static uv_tcp_t tcpServer;
|
37
|
+
static uv_udp_t udpServer;
|
38
|
+
static uv_udp_send_t send_req;
|
34
39
|
|
35
40
|
|
36
|
-
static uv_buf_t alloc(
|
41
|
+
static uv_buf_t alloc(uv_handle_t* handle, size_t suggested_size) {
|
37
42
|
uv_buf_t buf;
|
38
43
|
buf.base = (char*) malloc(suggested_size);
|
39
44
|
buf.len = suggested_size;
|
@@ -74,14 +79,15 @@ static void on_connection(uv_stream_t* server, int status) {
|
|
74
79
|
int r;
|
75
80
|
|
76
81
|
if (status != 0) {
|
77
|
-
fprintf(stderr, "Connect error %d\n",
|
82
|
+
fprintf(stderr, "Connect error %d\n",
|
83
|
+
uv_last_error(loop).code);
|
78
84
|
}
|
79
85
|
ASSERT(status == 0);
|
80
86
|
|
81
87
|
handle = (uv_handle_t*) malloc(sizeof(uv_tcp_t));
|
82
88
|
ASSERT(handle != NULL);
|
83
89
|
|
84
|
-
uv_tcp_init((uv_tcp_t*)handle);
|
90
|
+
uv_tcp_init(loop, (uv_tcp_t*)handle);
|
85
91
|
|
86
92
|
/* associate server with stream */
|
87
93
|
handle->data = server;
|
@@ -89,9 +95,10 @@ static void on_connection(uv_stream_t* server, int status) {
|
|
89
95
|
r = uv_accept(server, (uv_stream_t*)handle);
|
90
96
|
ASSERT(r == 0);
|
91
97
|
|
92
|
-
status = uv_getsockname(
|
98
|
+
status = uv_getsockname(handle, &sockname, &namelen);
|
93
99
|
if (status != 0) {
|
94
|
-
fprintf(stderr, "uv_getsockname error (accepted) %d\n",
|
100
|
+
fprintf(stderr, "uv_getsockname error (accepted) %d\n",
|
101
|
+
uv_last_error(loop).code);
|
95
102
|
}
|
96
103
|
ASSERT(status == 0);
|
97
104
|
|
@@ -99,7 +106,6 @@ static void on_connection(uv_stream_t* server, int status) {
|
|
99
106
|
|
100
107
|
r = uv_read_start((uv_stream_t*)handle, alloc, after_read);
|
101
108
|
ASSERT(r == 0);
|
102
|
-
|
103
109
|
}
|
104
110
|
|
105
111
|
|
@@ -110,9 +116,10 @@ static void on_connect(uv_connect_t* req, int status) {
|
|
110
116
|
|
111
117
|
ASSERT(status == 0);
|
112
118
|
|
113
|
-
r = uv_getsockname(&tcp, &sockname, &namelen);
|
119
|
+
r = uv_getsockname((uv_handle_t*)&tcp, &sockname, &namelen);
|
114
120
|
if (r != 0) {
|
115
|
-
fprintf(stderr, "uv_getsockname error (connector) %d\n",
|
121
|
+
fprintf(stderr, "uv_getsockname error (connector) %d\n",
|
122
|
+
uv_last_error(loop).code);
|
116
123
|
}
|
117
124
|
ASSERT(r == 0);
|
118
125
|
|
@@ -129,7 +136,7 @@ static int tcp_listener(int port) {
|
|
129
136
|
char ip[20];
|
130
137
|
int r;
|
131
138
|
|
132
|
-
r = uv_tcp_init(&tcpServer);
|
139
|
+
r = uv_tcp_init(loop, &tcpServer);
|
133
140
|
if (r) {
|
134
141
|
fprintf(stderr, "Socket creation error\n");
|
135
142
|
return 1;
|
@@ -147,9 +154,12 @@ static int tcp_listener(int port) {
|
|
147
154
|
return 1;
|
148
155
|
}
|
149
156
|
|
150
|
-
|
157
|
+
memset(&sockname, -1, sizeof sockname);
|
158
|
+
|
159
|
+
r = uv_getsockname((uv_handle_t*)&tcpServer, &sockname, &namelen);
|
151
160
|
if (r != 0) {
|
152
|
-
fprintf(stderr, "uv_getsockname error (listening) %d\n",
|
161
|
+
fprintf(stderr, "uv_getsockname error (listening) %d\n",
|
162
|
+
uv_last_error(loop).code);
|
153
163
|
}
|
154
164
|
ASSERT(r == 0);
|
155
165
|
|
@@ -170,7 +180,7 @@ static void tcp_connector() {
|
|
170
180
|
int r;
|
171
181
|
struct sockaddr_in server_addr = uv_ip4_addr("127.0.0.1", TEST_PORT);
|
172
182
|
|
173
|
-
r = uv_tcp_init(&tcp);
|
183
|
+
r = uv_tcp_init(loop, &tcp);
|
174
184
|
tcp.data = &connect_req;
|
175
185
|
ASSERT(!r);
|
176
186
|
|
@@ -179,18 +189,134 @@ static void tcp_connector() {
|
|
179
189
|
}
|
180
190
|
|
181
191
|
|
182
|
-
|
192
|
+
static void udp_recv(uv_udp_t* handle,
|
193
|
+
ssize_t nread,
|
194
|
+
uv_buf_t buf,
|
195
|
+
struct sockaddr* addr,
|
196
|
+
unsigned flags) {
|
197
|
+
struct sockaddr sockname;
|
198
|
+
char ip[20];
|
199
|
+
int namelen;
|
200
|
+
int r;
|
201
|
+
|
202
|
+
ASSERT(nread >= 0);
|
203
|
+
|
204
|
+
if (nread == 0) {
|
205
|
+
free(buf.base);
|
206
|
+
return;
|
207
|
+
}
|
208
|
+
|
209
|
+
namelen = sizeof(sockname);
|
210
|
+
r = uv_getsockname((uv_handle_t*)&udp, &sockname, &namelen);
|
211
|
+
if (r != 0) {
|
212
|
+
fprintf(stderr, "uv_getsockname error (connector) %d\n", uv_last_error(loop).code);
|
213
|
+
}
|
214
|
+
ASSERT(r == 0);
|
215
|
+
|
216
|
+
r = uv_ip4_name((struct sockaddr_in*)&sockname, ip, 20);
|
217
|
+
ASSERT(r == 0);
|
218
|
+
printf("sockname = %s\n", ip);
|
219
|
+
|
220
|
+
getsocknamecount++;
|
221
|
+
|
222
|
+
uv_close((uv_handle_t*) &udp, NULL);
|
223
|
+
uv_close((uv_handle_t*) handle, NULL);
|
224
|
+
}
|
225
|
+
|
226
|
+
|
227
|
+
static void udp_send(uv_udp_send_t* req, int status) {
|
228
|
+
|
229
|
+
}
|
230
|
+
|
231
|
+
|
232
|
+
static int udp_listener(int port) {
|
233
|
+
struct sockaddr_in addr = uv_ip4_addr("0.0.0.0", port);
|
234
|
+
struct sockaddr sockname;
|
235
|
+
int namelen = sizeof(sockname);
|
236
|
+
char ip[20];
|
237
|
+
int r;
|
238
|
+
|
239
|
+
r = uv_udp_init(loop, &udpServer);
|
240
|
+
if (r) {
|
241
|
+
fprintf(stderr, "Socket creation error\n");
|
242
|
+
return 1;
|
243
|
+
}
|
244
|
+
|
245
|
+
r = uv_udp_bind(&udpServer, addr, 0);
|
246
|
+
if (r) {
|
247
|
+
fprintf(stderr, "Bind error\n");
|
248
|
+
return 1;
|
249
|
+
}
|
250
|
+
|
251
|
+
memset(&sockname, -1, sizeof sockname);
|
252
|
+
|
253
|
+
r = uv_getsockname((uv_handle_t*)&udpServer, &sockname, &namelen);
|
254
|
+
if (r != 0) {
|
255
|
+
fprintf(stderr, "uv_getsockname error (listening) %d\n", uv_last_error(loop).code);
|
256
|
+
}
|
257
|
+
ASSERT(r == 0);
|
258
|
+
|
259
|
+
r = uv_ip4_name((struct sockaddr_in*)&sockname, ip, 20);
|
260
|
+
ASSERT(r == 0);
|
261
|
+
ASSERT(ip[0] == '0');
|
262
|
+
ASSERT(ip[1] == '.');
|
263
|
+
ASSERT(ip[2] == '0');
|
264
|
+
printf("sockname = %s\n", ip);
|
265
|
+
|
266
|
+
getsocknamecount++;
|
267
|
+
|
268
|
+
r = uv_udp_recv_start(&udpServer, alloc, udp_recv);
|
269
|
+
ASSERT(r == 0);
|
270
|
+
|
271
|
+
return 0;
|
272
|
+
}
|
273
|
+
|
274
|
+
|
275
|
+
static void udp_sender(void) {
|
276
|
+
struct sockaddr_in server_addr;
|
277
|
+
uv_buf_t buf;
|
278
|
+
int r;
|
279
|
+
|
280
|
+
r = uv_udp_init(loop, &udp);
|
281
|
+
ASSERT(!r);
|
282
|
+
|
283
|
+
buf = uv_buf_init("PING", 4);
|
284
|
+
server_addr = uv_ip4_addr("127.0.0.1", TEST_PORT);
|
285
|
+
|
286
|
+
r = uv_udp_send(&send_req, &udp, &buf, 1, server_addr, udp_send);
|
287
|
+
ASSERT(!r);
|
288
|
+
}
|
289
|
+
|
290
|
+
|
291
|
+
TEST_IMPL(getsockname_tcp) {
|
183
292
|
uv_init();
|
293
|
+
loop = uv_default_loop();
|
184
294
|
|
185
295
|
if (tcp_listener(TEST_PORT))
|
186
296
|
return 1;
|
187
297
|
|
188
298
|
tcp_connector();
|
189
299
|
|
190
|
-
uv_run();
|
300
|
+
uv_run(loop);
|
191
301
|
|
192
302
|
ASSERT(getsocknamecount == 3);
|
193
303
|
|
194
304
|
return 0;
|
195
305
|
}
|
196
306
|
|
307
|
+
|
308
|
+
TEST_IMPL(getsockname_udp) {
|
309
|
+
uv_init();
|
310
|
+
loop = uv_default_loop();
|
311
|
+
|
312
|
+
if (udp_listener(TEST_PORT))
|
313
|
+
return 1;
|
314
|
+
|
315
|
+
udp_sender();
|
316
|
+
|
317
|
+
uv_run(loop);
|
318
|
+
|
319
|
+
ASSERT(getsocknamecount == 2);
|
320
|
+
|
321
|
+
return 0;
|
322
|
+
}
|
@@ -62,17 +62,18 @@ TEST_IMPL(idle_starvation) {
|
|
62
62
|
|
63
63
|
uv_init();
|
64
64
|
|
65
|
-
|
65
|
+
|
66
|
+
r = uv_idle_init(uv_default_loop(), &idle_handle);
|
66
67
|
ASSERT(r == 0);
|
67
68
|
r = uv_idle_start(&idle_handle, idle_cb);
|
68
69
|
ASSERT(r == 0);
|
69
70
|
|
70
|
-
r = uv_timer_init(&timer_handle);
|
71
|
+
r = uv_timer_init(uv_default_loop(), &timer_handle);
|
71
72
|
ASSERT(r == 0);
|
72
73
|
r = uv_timer_start(&timer_handle, timer_cb, 50, 0);
|
73
74
|
ASSERT(r == 0);
|
74
75
|
|
75
|
-
r = uv_run();
|
76
|
+
r = uv_run(uv_default_loop());
|
76
77
|
ASSERT(r == 0);
|
77
78
|
|
78
79
|
ASSERT(idle_cb_called > 0);
|
@@ -36,6 +36,10 @@ TEST_DECLARE (tcp_bind6_error_addrnotavail)
|
|
36
36
|
TEST_DECLARE (tcp_bind6_error_fault)
|
37
37
|
TEST_DECLARE (tcp_bind6_error_inval)
|
38
38
|
TEST_DECLARE (tcp_bind6_localhost_ok)
|
39
|
+
TEST_DECLARE (udp_send_and_recv)
|
40
|
+
TEST_DECLARE (udp_dgram_too_big)
|
41
|
+
TEST_DECLARE (udp_dual_stack)
|
42
|
+
TEST_DECLARE (udp_ipv6_only)
|
39
43
|
TEST_DECLARE (pipe_bind_error_addrinuse)
|
40
44
|
TEST_DECLARE (pipe_bind_error_addrnotavail)
|
41
45
|
TEST_DECLARE (pipe_bind_error_inval)
|
@@ -60,13 +64,21 @@ TEST_DECLARE (hrtime)
|
|
60
64
|
TEST_DECLARE (getaddrinfo_basic)
|
61
65
|
TEST_DECLARE (getaddrinfo_concurrent)
|
62
66
|
TEST_DECLARE (gethostbyname)
|
63
|
-
TEST_DECLARE (
|
67
|
+
TEST_DECLARE (getsockname_tcp)
|
68
|
+
TEST_DECLARE (getsockname_udp)
|
64
69
|
TEST_DECLARE (fail_always)
|
65
70
|
TEST_DECLARE (pass_always)
|
66
71
|
TEST_DECLARE (spawn_exit_code)
|
67
72
|
TEST_DECLARE (spawn_stdout)
|
68
73
|
TEST_DECLARE (spawn_stdin)
|
69
74
|
TEST_DECLARE (spawn_and_kill)
|
75
|
+
TEST_DECLARE (fs_file_async)
|
76
|
+
TEST_DECLARE (fs_file_sync)
|
77
|
+
TEST_DECLARE (fs_async_dir)
|
78
|
+
TEST_DECLARE (fs_async_sendfile)
|
79
|
+
TEST_DECLARE (fs_fstat)
|
80
|
+
TEST_DECLARE (fs_chmod)
|
81
|
+
TEST_DECLARE (threadpool_queue_work_simple)
|
70
82
|
#ifdef _WIN32
|
71
83
|
TEST_DECLARE (spawn_detect_pipe_name_collisions_on_windows)
|
72
84
|
TEST_DECLARE (argument_escaping)
|
@@ -106,6 +118,11 @@ TASK_LIST_START
|
|
106
118
|
TEST_ENTRY (tcp_bind6_error_inval)
|
107
119
|
TEST_ENTRY (tcp_bind6_localhost_ok)
|
108
120
|
|
121
|
+
TEST_ENTRY (udp_send_and_recv)
|
122
|
+
TEST_ENTRY (udp_dgram_too_big)
|
123
|
+
TEST_ENTRY (udp_dual_stack)
|
124
|
+
TEST_ENTRY (udp_ipv6_only)
|
125
|
+
|
109
126
|
TEST_ENTRY (pipe_bind_error_addrinuse)
|
110
127
|
TEST_ENTRY (pipe_bind_error_addrnotavail)
|
111
128
|
TEST_ENTRY (pipe_bind_error_inval)
|
@@ -147,7 +164,8 @@ TASK_LIST_START
|
|
147
164
|
TEST_ENTRY (gethostbyname)
|
148
165
|
TEST_HELPER (gethostbyname, tcp4_echo_server)
|
149
166
|
|
150
|
-
TEST_ENTRY (
|
167
|
+
TEST_ENTRY (getsockname_tcp)
|
168
|
+
TEST_ENTRY (getsockname_udp)
|
151
169
|
|
152
170
|
TEST_ENTRY (spawn_exit_code)
|
153
171
|
TEST_ENTRY (spawn_stdout)
|
@@ -159,6 +177,15 @@ TASK_LIST_START
|
|
159
177
|
TEST_ENTRY (environment_creation)
|
160
178
|
#endif
|
161
179
|
|
180
|
+
TEST_ENTRY (fs_file_async)
|
181
|
+
TEST_ENTRY (fs_file_sync)
|
182
|
+
TEST_ENTRY (fs_async_dir)
|
183
|
+
TEST_ENTRY (fs_async_sendfile)
|
184
|
+
TEST_ENTRY (fs_fstat)
|
185
|
+
TEST_ENTRY (fs_chmod)
|
186
|
+
|
187
|
+
TEST_ENTRY (threadpool_queue_work_simple)
|
188
|
+
|
162
189
|
#if 0
|
163
190
|
/* These are for testing the test runner. */
|
164
191
|
TEST_ENTRY (fail_always)
|
@@ -153,7 +153,7 @@ static void idle_1_cb(uv_idle_t* handle, int status) {
|
|
153
153
|
|
154
154
|
/* Init idle_2 and make it active */
|
155
155
|
if (!idle_2_is_active) {
|
156
|
-
r = uv_idle_init(&idle_2_handle);
|
156
|
+
r = uv_idle_init(uv_default_loop(), &idle_2_handle);
|
157
157
|
ASSERT(r == 0);
|
158
158
|
r = uv_idle_start(&idle_2_handle, idle_2_cb);
|
159
159
|
ASSERT(r == 0);
|
@@ -301,23 +301,24 @@ TEST_IMPL(loop_handles) {
|
|
301
301
|
|
302
302
|
uv_init();
|
303
303
|
|
304
|
-
|
304
|
+
|
305
|
+
r = uv_prepare_init(uv_default_loop(), &prepare_1_handle);
|
305
306
|
ASSERT(r == 0);
|
306
307
|
r = uv_prepare_start(&prepare_1_handle, prepare_1_cb);
|
307
308
|
ASSERT(r == 0);
|
308
309
|
|
309
|
-
r = uv_check_init(&check_handle);
|
310
|
+
r = uv_check_init(uv_default_loop(), &check_handle);
|
310
311
|
ASSERT(r == 0);
|
311
312
|
r = uv_check_start(&check_handle, check_cb);
|
312
313
|
ASSERT(r == 0);
|
313
314
|
|
314
315
|
/* initialize only, prepare_2 is started by prepare_1_cb */
|
315
|
-
r = uv_prepare_init(&prepare_2_handle);
|
316
|
+
r = uv_prepare_init(uv_default_loop(), &prepare_2_handle);
|
316
317
|
ASSERT(r == 0);
|
317
318
|
|
318
319
|
for (i = 0; i < IDLE_COUNT; i++) {
|
319
320
|
/* initialize only, idle_1 handles are started by check_cb */
|
320
|
-
r = uv_idle_init(&idle_1_handles[i]);
|
321
|
+
r = uv_idle_init(uv_default_loop(), &idle_1_handles[i]);
|
321
322
|
ASSERT(r == 0);
|
322
323
|
}
|
323
324
|
|
@@ -325,13 +326,13 @@ TEST_IMPL(loop_handles) {
|
|
325
326
|
|
326
327
|
/* the timer callback is there to keep the event loop polling */
|
327
328
|
/* unref it as it is not supposed to keep the loop alive */
|
328
|
-
r = uv_timer_init(&timer_handle);
|
329
|
+
r = uv_timer_init(uv_default_loop(), &timer_handle);
|
329
330
|
ASSERT(r == 0);
|
330
331
|
r = uv_timer_start(&timer_handle, timer_cb, TIMEOUT, TIMEOUT);
|
331
332
|
ASSERT(r == 0);
|
332
|
-
uv_unref();
|
333
|
+
uv_unref(uv_default_loop());
|
333
334
|
|
334
|
-
r = uv_run();
|
335
|
+
r = uv_run(uv_default_loop());
|
335
336
|
ASSERT(r == 0);
|
336
337
|
|
337
338
|
ASSERT(loop_iteration == ITERATIONS);
|
@@ -51,7 +51,7 @@ typedef struct {
|
|
51
51
|
void pinger_try_read(pinger_t* pinger);
|
52
52
|
|
53
53
|
|
54
|
-
static uv_buf_t alloc_cb(
|
54
|
+
static uv_buf_t alloc_cb(uv_handle_t* handle, size_t size) {
|
55
55
|
uv_buf_t buf;
|
56
56
|
buf.base = (char*)malloc(size);
|
57
57
|
buf.len = size;
|
@@ -94,13 +94,13 @@ static void pinger_write_ping(pinger_t* pinger) {
|
|
94
94
|
|
95
95
|
|
96
96
|
static void pinger_read_cb(uv_stream_t* stream, ssize_t nread, uv_buf_t buf) {
|
97
|
-
|
97
|
+
ssize_t i;
|
98
98
|
pinger_t* pinger;
|
99
99
|
|
100
100
|
pinger = (pinger_t*)stream->data;
|
101
101
|
|
102
102
|
if (nread < 0) {
|
103
|
-
ASSERT(uv_last_error().code == UV_EOF);
|
103
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EOF);
|
104
104
|
|
105
105
|
puts("got EOF");
|
106
106
|
|
@@ -155,7 +155,7 @@ static void tcp_pinger_v6_new() {
|
|
155
155
|
pinger->pongs = 0;
|
156
156
|
|
157
157
|
/* Try to connec to the server and do NUM_PINGS ping-pongs. */
|
158
|
-
r = uv_tcp_init(&pinger->tcp);
|
158
|
+
r = uv_tcp_init(uv_default_loop(), &pinger->tcp);
|
159
159
|
pinger->tcp.data = pinger;
|
160
160
|
ASSERT(!r);
|
161
161
|
|
@@ -180,7 +180,7 @@ static void tcp_pinger_new() {
|
|
180
180
|
pinger->pongs = 0;
|
181
181
|
|
182
182
|
/* Try to connec to the server and do NUM_PINGS ping-pongs. */
|
183
|
-
r = uv_tcp_init(&pinger->tcp);
|
183
|
+
r = uv_tcp_init(uv_default_loop(), &pinger->tcp);
|
184
184
|
pinger->tcp.data = pinger;
|
185
185
|
ASSERT(!r);
|
186
186
|
|
@@ -204,7 +204,7 @@ static void pipe_pinger_new() {
|
|
204
204
|
pinger->pongs = 0;
|
205
205
|
|
206
206
|
/* Try to connec to the server and do NUM_PINGS ping-pongs. */
|
207
|
-
r = uv_pipe_init(&pinger->pipe);
|
207
|
+
r = uv_pipe_init(uv_default_loop(), &pinger->pipe);
|
208
208
|
pinger->pipe.data = pinger;
|
209
209
|
ASSERT(!r);
|
210
210
|
|
@@ -224,7 +224,7 @@ TEST_IMPL(tcp_ping_pong) {
|
|
224
224
|
uv_init();
|
225
225
|
|
226
226
|
tcp_pinger_new();
|
227
|
-
uv_run();
|
227
|
+
uv_run(uv_default_loop());
|
228
228
|
|
229
229
|
ASSERT(completed_pingers == 1);
|
230
230
|
|
@@ -236,7 +236,7 @@ TEST_IMPL(tcp_ping_pong_v6) {
|
|
236
236
|
uv_init();
|
237
237
|
|
238
238
|
tcp_pinger_v6_new();
|
239
|
-
uv_run();
|
239
|
+
uv_run(uv_default_loop());
|
240
240
|
|
241
241
|
ASSERT(completed_pingers == 1);
|
242
242
|
|
@@ -248,7 +248,7 @@ TEST_IMPL(pipe_ping_pong) {
|
|
248
248
|
uv_init();
|
249
249
|
|
250
250
|
pipe_pinger_new();
|
251
|
-
uv_run();
|
251
|
+
uv_run(uv_default_loop());
|
252
252
|
|
253
253
|
ASSERT(completed_pingers == 1);
|
254
254
|
|
@@ -47,29 +47,30 @@ TEST_IMPL(pipe_bind_error_addrinuse) {
|
|
47
47
|
|
48
48
|
uv_init();
|
49
49
|
|
50
|
-
|
50
|
+
|
51
|
+
r = uv_pipe_init(uv_default_loop(), &server1);
|
51
52
|
ASSERT(r == 0);
|
52
53
|
r = uv_pipe_bind(&server1, TEST_PIPENAME);
|
53
54
|
ASSERT(r == 0);
|
54
55
|
|
55
|
-
r = uv_pipe_init(&server2);
|
56
|
+
r = uv_pipe_init(uv_default_loop(), &server2);
|
56
57
|
ASSERT(r == 0);
|
57
58
|
r = uv_pipe_bind(&server2, TEST_PIPENAME);
|
58
59
|
ASSERT(r == -1);
|
59
60
|
|
60
|
-
ASSERT(uv_last_error().code == UV_EADDRINUSE);
|
61
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EADDRINUSE);
|
61
62
|
|
62
63
|
r = uv_listen((uv_stream_t*)&server1, SOMAXCONN, NULL);
|
63
64
|
ASSERT(r == 0);
|
64
65
|
r = uv_listen((uv_stream_t*)&server2, SOMAXCONN, NULL);
|
65
66
|
ASSERT(r == -1);
|
66
67
|
|
67
|
-
ASSERT(uv_last_error().code == UV_EINVAL);
|
68
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EINVAL);
|
68
69
|
|
69
70
|
uv_close((uv_handle_t*)&server1, close_cb);
|
70
71
|
uv_close((uv_handle_t*)&server2, close_cb);
|
71
72
|
|
72
|
-
uv_run();
|
73
|
+
uv_run(uv_default_loop());
|
73
74
|
|
74
75
|
ASSERT(close_cb_called == 2);
|
75
76
|
|
@@ -83,16 +84,17 @@ TEST_IMPL(pipe_bind_error_addrnotavail) {
|
|
83
84
|
|
84
85
|
uv_init();
|
85
86
|
|
86
|
-
|
87
|
+
|
88
|
+
r = uv_pipe_init(uv_default_loop(), &server);
|
87
89
|
ASSERT(r == 0);
|
88
90
|
r = uv_pipe_bind(&server, BAD_PIPENAME);
|
89
91
|
|
90
92
|
ASSERT(r == -1);
|
91
|
-
ASSERT(uv_last_error().code == UV_EACCESS);
|
93
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EACCESS);
|
92
94
|
|
93
95
|
uv_close((uv_handle_t*)&server, close_cb);
|
94
96
|
|
95
|
-
uv_run();
|
97
|
+
uv_run(uv_default_loop());
|
96
98
|
|
97
99
|
ASSERT(close_cb_called == 1);
|
98
100
|
|
@@ -106,18 +108,19 @@ TEST_IMPL(pipe_bind_error_inval) {
|
|
106
108
|
|
107
109
|
uv_init();
|
108
110
|
|
109
|
-
|
111
|
+
|
112
|
+
r = uv_pipe_init(uv_default_loop(), &server);
|
110
113
|
ASSERT(r == 0);
|
111
114
|
r = uv_pipe_bind(&server, TEST_PIPENAME);
|
112
115
|
ASSERT(r == 0);
|
113
116
|
r = uv_pipe_bind(&server, TEST_PIPENAME_2);
|
114
117
|
ASSERT(r == -1);
|
115
118
|
|
116
|
-
ASSERT(uv_last_error().code == UV_EINVAL);
|
119
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EINVAL);
|
117
120
|
|
118
121
|
uv_close((uv_handle_t*)&server, close_cb);
|
119
122
|
|
120
|
-
uv_run();
|
123
|
+
uv_run(uv_default_loop());
|
121
124
|
|
122
125
|
ASSERT(close_cb_called == 1);
|
123
126
|
|
@@ -131,16 +134,17 @@ TEST_IMPL(pipe_listen_without_bind) {
|
|
131
134
|
|
132
135
|
uv_init();
|
133
136
|
|
134
|
-
|
137
|
+
|
138
|
+
r = uv_pipe_init(uv_default_loop(), &server);
|
135
139
|
ASSERT(r == 0);
|
136
140
|
r = uv_listen((uv_stream_t*)&server, SOMAXCONN, NULL);
|
137
141
|
ASSERT(r == -1);
|
138
142
|
|
139
|
-
ASSERT(uv_last_error().code == UV_EINVAL);
|
143
|
+
ASSERT(uv_last_error(uv_default_loop()).code == UV_EINVAL);
|
140
144
|
|
141
145
|
uv_close((uv_handle_t*)&server, close_cb);
|
142
146
|
|
143
|
-
uv_run();
|
147
|
+
uv_run(uv_default_loop());
|
144
148
|
|
145
149
|
ASSERT(close_cb_called == 1);
|
146
150
|
|