noderb 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/LICENSE +19 -0
- data/README.md +25 -0
- data/ext/noderb_extension/extconf.rb +11 -0
- data/ext/noderb_extension/libuv/AUTHORS +11 -0
- data/ext/noderb_extension/libuv/LICENSE +48 -0
- data/ext/noderb_extension/libuv/Makefile +119 -0
- data/ext/noderb_extension/libuv/README +45 -0
- data/ext/noderb_extension/libuv/build/all.gyp +254 -0
- data/ext/noderb_extension/libuv/build/common.gypi +13 -0
- data/ext/noderb_extension/libuv/build/gyp_uv +43 -0
- data/ext/noderb_extension/libuv/config-mingw.mk +67 -0
- data/ext/noderb_extension/libuv/config-unix.mk +121 -0
- data/ext/noderb_extension/libuv/create-msvs-files.bat +14 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ANNOUNCE +482 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/BUGS +141 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/Bmakefile +268 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/CONTRIBUTORS +140 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING +150 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/COPYING.LIB +504 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ChangeLog +5194 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/FAQ +451 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/GNUmakefile +593 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/MAINTAINERS +4 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/Makefile +516 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/NEWS +1245 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile +24 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/Nmakefile.tests +260 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/PROGRESS +4 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README +601 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.Borland +57 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.CV +3036 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.NONPORTABLE +783 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.Watcom +62 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/README.WinCE +6 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/TODO +7 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/WinCE-PORT +222 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/attr.c +53 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/autostatic.c +69 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/barrier.c +47 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/build/all.gyp +207 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/builddmc.bat +9 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/cancel.c +44 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/cleanup.c +148 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/condvar.c +50 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/config.h +153 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/context.h +74 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/create.c +308 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/dll.c +92 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/errno.c +94 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/exit.c +44 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/fork.c +39 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/global.c +107 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/implement.h +944 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/misc.c +50 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/mutex.c +62 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/need_errno.h +145 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/nonportable.c +47 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/private.c +54 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.c +66 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsp +142 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.dsw +29 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread.h +1368 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_destroy.c +79 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getdetachstate.c +86 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getinheritsched.c +51 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedparam.c +52 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getschedpolicy.c +61 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getscope.c +54 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstackaddr.c +97 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_getstacksize.c +100 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_init.c +117 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setdetachstate.c +91 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setinheritsched.c +57 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedparam.c +63 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setschedpolicy.c +55 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setscope.c +62 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstackaddr.c +97 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_attr_setstacksize.c +110 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_destroy.c +103 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_init.c +69 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrier_wait.c +104 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_destroy.c +83 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_getpshared.c +95 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_init.c +85 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_barrierattr_setpshared.c +119 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cancel.c +189 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_destroy.c +253 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_init.c +167 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_signal.c +231 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_cond_wait.c +567 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_destroy.c +86 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_getpshared.c +97 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_init.c +87 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_condattr_setpshared.c +117 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_delay_np.c +172 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_detach.c +136 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_equal.c +76 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_exit.c +106 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getconcurrency.c +45 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getschedparam.c +75 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getspecific.c +87 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getunique_np.c +47 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_getw32threadhandle_np.c +65 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_join.c +157 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_create.c +108 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_key_delete.c +125 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_kill.c +105 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_consistent.c +187 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_destroy.c +148 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_init.c +130 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_lock.c +269 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_timedlock.c +324 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_trylock.c +154 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutex_unlock.c +175 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_destroy.c +83 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getkind_np.c +44 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getpshared.c +95 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_getrobust.c +113 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_gettype.c +56 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_init.c +86 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setkind_np.c +44 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setpshared.c +119 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_setrobust.c +119 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_mutexattr_settype.c +143 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_num_processors_np.c +56 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_once.c +79 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_destroy.c +143 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_init.c +109 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_rdlock.c +102 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedrdlock.c +109 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_timedwrlock.c +139 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_tryrdlock.c +102 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_trywrlock.c +122 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_unlock.c +93 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlock_wrlock.c +133 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_destroy.c +84 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_getpshared.c +97 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_init.c +83 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_rwlockattr_setpshared.c +120 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_self.c +141 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcancelstate.c +125 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setcanceltype.c +126 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setconcurrency.c +53 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setschedparam.c +123 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_setspecific.c +167 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_destroy.c +111 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_init.c +123 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_lock.c +80 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_trylock.c +77 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_spin_unlock.c +71 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_testcancel.c +103 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_timechange_handler_np.c +108 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/pthread_win32_attach_detach_np.c +258 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_MCS_lock.c +278 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_callUserDestroyRoutines.c +232 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_calloc.c +56 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_cond_check_need_init.c +78 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_getprocessors.c +91 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_is_attr.c +47 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_mutex_check_need_init.c +92 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_new.c +94 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processInitialize.c +92 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_processTerminate.c +105 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_relmillisecs.c +132 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_reuse.c +151 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_cancelwrwait.c +50 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_rwlock_check_need_init.c +77 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_semwait.c +135 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_spinlock_check_need_init.c +78 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadDestroy.c +79 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_threadStart.c +357 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_throw.c +189 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_timespec.c +83 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocCreate.c +118 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/ptw32_tkAssocDestroy.c +114 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/rwlock.c +51 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched.c +53 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched.h +183 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_max.c +134 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_get_priority_min.c +135 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_getscheduler.c +71 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_setscheduler.c +83 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sched_yield.c +71 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_close.c +58 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_destroy.c +144 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_getvalue.c +110 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_init.c +169 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_open.c +58 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post.c +128 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_post_multiple.c +142 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_timedwait.c +238 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_trywait.c +117 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_unlink.c +58 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sem_wait.c +187 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.c +69 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/semaphore.h +169 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/signal.c +179 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/spin.c +46 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/sync.c +43 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/tsd.c +44 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/version.rc +388 -0
- data/ext/noderb_extension/libuv/deps/pthread-win32/w32_CancelableWait.c +161 -0
- data/ext/noderb_extension/libuv/doc/desired-api.md +159 -0
- data/ext/noderb_extension/libuv/doc/iocp-links.html +574 -0
- data/ext/noderb_extension/libuv/include/ares.h +582 -0
- data/ext/noderb_extension/libuv/include/ares_version.h +24 -0
- data/ext/noderb_extension/libuv/include/eio.h +376 -0
- data/ext/noderb_extension/libuv/include/ev.h +835 -0
- data/ext/noderb_extension/libuv/include/ngx-queue.h +102 -0
- data/ext/noderb_extension/libuv/include/tree.h +762 -0
- data/ext/noderb_extension/libuv/include/uv-unix.h +138 -0
- data/ext/noderb_extension/libuv/include/uv-win.h +187 -0
- data/ext/noderb_extension/libuv/include/uv.h +635 -0
- data/ext/noderb_extension/libuv/src/ares/AUTHORS +37 -0
- data/ext/noderb_extension/libuv/src/ares/CHANGES +1198 -0
- data/ext/noderb_extension/libuv/src/ares/CMakeLists.txt +22 -0
- data/ext/noderb_extension/libuv/src/ares/NEWS +21 -0
- data/ext/noderb_extension/libuv/src/ares/README +60 -0
- data/ext/noderb_extension/libuv/src/ares/README.cares +13 -0
- data/ext/noderb_extension/libuv/src/ares/README.msvc +118 -0
- data/ext/noderb_extension/libuv/src/ares/README.node +21 -0
- data/ext/noderb_extension/libuv/src/ares/RELEASE-NOTES +25 -0
- data/ext/noderb_extension/libuv/src/ares/TODO +23 -0
- data/ext/noderb_extension/libuv/src/ares/ares__close_sockets.c +66 -0
- data/ext/noderb_extension/libuv/src/ares/ares__get_hostent.c +263 -0
- data/ext/noderb_extension/libuv/src/ares/ares__read_line.c +71 -0
- data/ext/noderb_extension/libuv/src/ares/ares__timeval.c +111 -0
- data/ext/noderb_extension/libuv/src/ares/ares_cancel.c +63 -0
- data/ext/noderb_extension/libuv/src/ares/ares_data.c +190 -0
- data/ext/noderb_extension/libuv/src/ares/ares_data.h +65 -0
- data/ext/noderb_extension/libuv/src/ares/ares_destroy.c +105 -0
- data/ext/noderb_extension/libuv/src/ares/ares_dns.h +90 -0
- data/ext/noderb_extension/libuv/src/ares/ares_expand_name.c +193 -0
- data/ext/noderb_extension/libuv/src/ares/ares_expand_string.c +75 -0
- data/ext/noderb_extension/libuv/src/ares/ares_fds.c +62 -0
- data/ext/noderb_extension/libuv/src/ares/ares_free_hostent.c +39 -0
- data/ext/noderb_extension/libuv/src/ares/ares_free_string.c +25 -0
- data/ext/noderb_extension/libuv/src/ares/ares_gethostbyaddr.c +292 -0
- data/ext/noderb_extension/libuv/src/ares/ares_gethostbyname.c +515 -0
- data/ext/noderb_extension/libuv/src/ares/ares_getnameinfo.c +426 -0
- data/ext/noderb_extension/libuv/src/ares/ares_getopt.c +122 -0
- data/ext/noderb_extension/libuv/src/ares/ares_getopt.h +53 -0
- data/ext/noderb_extension/libuv/src/ares/ares_getsock.c +72 -0
- data/ext/noderb_extension/libuv/src/ares/ares_init.c +1665 -0
- data/ext/noderb_extension/libuv/src/ares/ares_ipv6.h +78 -0
- data/ext/noderb_extension/libuv/src/ares/ares_library_init.c +132 -0
- data/ext/noderb_extension/libuv/src/ares/ares_library_init.h +39 -0
- data/ext/noderb_extension/libuv/src/ares/ares_llist.c +86 -0
- data/ext/noderb_extension/libuv/src/ares/ares_llist.h +42 -0
- data/ext/noderb_extension/libuv/src/ares/ares_mkquery.c +195 -0
- data/ext/noderb_extension/libuv/src/ares/ares_nowarn.c +59 -0
- data/ext/noderb_extension/libuv/src/ares/ares_nowarn.h +24 -0
- data/ext/noderb_extension/libuv/src/ares/ares_options.c +253 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_a_reply.c +260 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_aaaa_reply.c +256 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_mx_reply.c +170 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_ns_reply.c +182 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_ptr_reply.c +208 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_srv_reply.c +179 -0
- data/ext/noderb_extension/libuv/src/ares/ares_parse_txt_reply.c +201 -0
- data/ext/noderb_extension/libuv/src/ares/ares_private.h +351 -0
- data/ext/noderb_extension/libuv/src/ares/ares_process.c +1296 -0
- data/ext/noderb_extension/libuv/src/ares/ares_query.c +183 -0
- data/ext/noderb_extension/libuv/src/ares/ares_rules.h +144 -0
- data/ext/noderb_extension/libuv/src/ares/ares_search.c +322 -0
- data/ext/noderb_extension/libuv/src/ares/ares_send.c +134 -0
- data/ext/noderb_extension/libuv/src/ares/ares_setup.h +191 -0
- data/ext/noderb_extension/libuv/src/ares/ares_strcasecmp.c +66 -0
- data/ext/noderb_extension/libuv/src/ares/ares_strcasecmp.h +30 -0
- data/ext/noderb_extension/libuv/src/ares/ares_strdup.c +42 -0
- data/ext/noderb_extension/libuv/src/ares/ares_strdup.h +26 -0
- data/ext/noderb_extension/libuv/src/ares/ares_strerror.c +56 -0
- data/ext/noderb_extension/libuv/src/ares/ares_timeout.c +80 -0
- data/ext/noderb_extension/libuv/src/ares/ares_version.c +11 -0
- data/ext/noderb_extension/libuv/src/ares/ares_writev.c +79 -0
- data/ext/noderb_extension/libuv/src/ares/ares_writev.h +36 -0
- data/ext/noderb_extension/libuv/src/ares/bitncmp.c +59 -0
- data/ext/noderb_extension/libuv/src/ares/bitncmp.h +26 -0
- data/ext/noderb_extension/libuv/src/ares/config_cygwin/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_darwin/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_freebsd/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_linux/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_openbsd/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_sunos/ares_config.h +510 -0
- data/ext/noderb_extension/libuv/src/ares/config_win32/ares_config.h +369 -0
- data/ext/noderb_extension/libuv/src/ares/get_ver.awk +35 -0
- data/ext/noderb_extension/libuv/src/ares/inet_net_pton.c +450 -0
- data/ext/noderb_extension/libuv/src/ares/inet_net_pton.h +31 -0
- data/ext/noderb_extension/libuv/src/ares/inet_ntop.c +232 -0
- data/ext/noderb_extension/libuv/src/ares/inet_ntop.h +27 -0
- data/ext/noderb_extension/libuv/src/ares/nameser.h +193 -0
- data/ext/noderb_extension/libuv/src/ares/setup_once.h +488 -0
- data/ext/noderb_extension/libuv/src/ares/windows_port.c +22 -0
- data/ext/noderb_extension/libuv/src/eio/Changes +63 -0
- data/ext/noderb_extension/libuv/src/eio/LICENSE +36 -0
- data/ext/noderb_extension/libuv/src/eio/Makefile.am +15 -0
- data/ext/noderb_extension/libuv/src/eio/aclocal.m4 +8957 -0
- data/ext/noderb_extension/libuv/src/eio/autogen.sh +3 -0
- data/ext/noderb_extension/libuv/src/eio/config.h.in +86 -0
- data/ext/noderb_extension/libuv/src/eio/config_cygwin.h +77 -0
- data/ext/noderb_extension/libuv/src/eio/config_darwin.h +137 -0
- data/ext/noderb_extension/libuv/src/eio/config_freebsd.h +78 -0
- data/ext/noderb_extension/libuv/src/eio/config_linux.h +101 -0
- data/ext/noderb_extension/libuv/src/eio/config_sunos.h +81 -0
- data/ext/noderb_extension/libuv/src/eio/configure.ac +22 -0
- data/ext/noderb_extension/libuv/src/eio/demo.c +194 -0
- data/ext/noderb_extension/libuv/src/eio/ecb.h +370 -0
- data/ext/noderb_extension/libuv/src/eio/eio.3 +3428 -0
- data/ext/noderb_extension/libuv/src/eio/eio.c +2562 -0
- data/ext/noderb_extension/libuv/src/eio/eio.pod +969 -0
- data/ext/noderb_extension/libuv/src/eio/libeio.m4 +195 -0
- data/ext/noderb_extension/libuv/src/eio/xthread.h +164 -0
- data/ext/noderb_extension/libuv/src/ev/Changes +388 -0
- data/ext/noderb_extension/libuv/src/ev/LICENSE +36 -0
- data/ext/noderb_extension/libuv/src/ev/Makefile.am +18 -0
- data/ext/noderb_extension/libuv/src/ev/Makefile.in +771 -0
- data/ext/noderb_extension/libuv/src/ev/README +58 -0
- data/ext/noderb_extension/libuv/src/ev/aclocal.m4 +8957 -0
- data/ext/noderb_extension/libuv/src/ev/autogen.sh +6 -0
- data/ext/noderb_extension/libuv/src/ev/config.guess +1526 -0
- data/ext/noderb_extension/libuv/src/ev/config.h.in +125 -0
- data/ext/noderb_extension/libuv/src/ev/config.sub +1658 -0
- data/ext/noderb_extension/libuv/src/ev/config_cygwin.h +123 -0
- data/ext/noderb_extension/libuv/src/ev/config_darwin.h +122 -0
- data/ext/noderb_extension/libuv/src/ev/config_freebsd.h +120 -0
- data/ext/noderb_extension/libuv/src/ev/config_linux.h +130 -0
- data/ext/noderb_extension/libuv/src/ev/config_sunos.h +122 -0
- data/ext/noderb_extension/libuv/src/ev/configure +13037 -0
- data/ext/noderb_extension/libuv/src/ev/configure.ac +18 -0
- data/ext/noderb_extension/libuv/src/ev/depcomp +630 -0
- data/ext/noderb_extension/libuv/src/ev/ev++.h +816 -0
- data/ext/noderb_extension/libuv/src/ev/ev.3 +5311 -0
- data/ext/noderb_extension/libuv/src/ev/ev.c +3913 -0
- data/ext/noderb_extension/libuv/src/ev/ev.pod +5243 -0
- data/ext/noderb_extension/libuv/src/ev/ev_epoll.c +266 -0
- data/ext/noderb_extension/libuv/src/ev/ev_kqueue.c +198 -0
- data/ext/noderb_extension/libuv/src/ev/ev_poll.c +148 -0
- data/ext/noderb_extension/libuv/src/ev/ev_port.c +179 -0
- data/ext/noderb_extension/libuv/src/ev/ev_select.c +310 -0
- data/ext/noderb_extension/libuv/src/ev/ev_vars.h +203 -0
- data/ext/noderb_extension/libuv/src/ev/ev_win32.c +153 -0
- data/ext/noderb_extension/libuv/src/ev/ev_wrap.h +196 -0
- data/ext/noderb_extension/libuv/src/ev/event.c +402 -0
- data/ext/noderb_extension/libuv/src/ev/event.h +170 -0
- data/ext/noderb_extension/libuv/src/ev/install-sh +294 -0
- data/ext/noderb_extension/libuv/src/ev/libev.m4 +39 -0
- data/ext/noderb_extension/libuv/src/ev/ltmain.sh +8413 -0
- data/ext/noderb_extension/libuv/src/ev/missing +336 -0
- data/ext/noderb_extension/libuv/src/ev/mkinstalldirs +111 -0
- data/ext/noderb_extension/libuv/src/uv-common.c +172 -0
- data/ext/noderb_extension/libuv/src/uv-common.h +53 -0
- data/ext/noderb_extension/libuv/src/uv-cygwin.c +52 -0
- data/ext/noderb_extension/libuv/src/uv-darwin.c +64 -0
- data/ext/noderb_extension/libuv/src/uv-eio.c +113 -0
- data/ext/noderb_extension/libuv/src/uv-eio.h +13 -0
- data/ext/noderb_extension/libuv/src/uv-freebsd.c +65 -0
- data/ext/noderb_extension/libuv/src/uv-linux.c +51 -0
- data/ext/noderb_extension/libuv/src/uv-sunos.c +60 -0
- data/ext/noderb_extension/libuv/src/uv-unix.c +2408 -0
- data/ext/noderb_extension/libuv/src/win/async.c +129 -0
- data/ext/noderb_extension/libuv/src/win/cares.c +304 -0
- data/ext/noderb_extension/libuv/src/win/core.c +155 -0
- data/ext/noderb_extension/libuv/src/win/error.c +140 -0
- data/ext/noderb_extension/libuv/src/win/getaddrinfo.c +341 -0
- data/ext/noderb_extension/libuv/src/win/handle.c +176 -0
- data/ext/noderb_extension/libuv/src/win/internal.h +237 -0
- data/ext/noderb_extension/libuv/src/win/loop-watcher.c +128 -0
- data/ext/noderb_extension/libuv/src/win/pipe.c +828 -0
- data/ext/noderb_extension/libuv/src/win/process.c +936 -0
- data/ext/noderb_extension/libuv/src/win/req.c +141 -0
- data/ext/noderb_extension/libuv/src/win/stdio.c +75 -0
- data/ext/noderb_extension/libuv/src/win/stream.c +149 -0
- data/ext/noderb_extension/libuv/src/win/tcp.c +895 -0
- data/ext/noderb_extension/libuv/src/win/timer.c +269 -0
- data/ext/noderb_extension/libuv/src/win/util.c +82 -0
- data/ext/noderb_extension/libuv/test/benchmark-ares.c +117 -0
- data/ext/noderb_extension/libuv/test/benchmark-getaddrinfo.c +90 -0
- data/ext/noderb_extension/libuv/test/benchmark-list.h +77 -0
- data/ext/noderb_extension/libuv/test/benchmark-ping-pongs.c +210 -0
- data/ext/noderb_extension/libuv/test/benchmark-pound.c +237 -0
- data/ext/noderb_extension/libuv/test/benchmark-pump.c +459 -0
- data/ext/noderb_extension/libuv/test/benchmark-sizes.c +39 -0
- data/ext/noderb_extension/libuv/test/benchmark-spawn.c +154 -0
- data/ext/noderb_extension/libuv/test/dns-server.c +323 -0
- data/ext/noderb_extension/libuv/test/echo-server.c +299 -0
- data/ext/noderb_extension/libuv/test/run-benchmarks.c +64 -0
- data/ext/noderb_extension/libuv/test/run-tests.c +82 -0
- data/ext/noderb_extension/libuv/test/runner-unix.c +335 -0
- data/ext/noderb_extension/libuv/test/runner-unix.h +36 -0
- data/ext/noderb_extension/libuv/test/runner-win.c +343 -0
- data/ext/noderb_extension/libuv/test/runner-win.h +42 -0
- data/ext/noderb_extension/libuv/test/runner.c +311 -0
- data/ext/noderb_extension/libuv/test/runner.h +155 -0
- data/ext/noderb_extension/libuv/test/task.h +111 -0
- data/ext/noderb_extension/libuv/test/test-async.c +218 -0
- data/ext/noderb_extension/libuv/test/test-callback-stack.c +205 -0
- data/ext/noderb_extension/libuv/test/test-connection-fail.c +149 -0
- data/ext/noderb_extension/libuv/test/test-delayed-accept.c +198 -0
- data/ext/noderb_extension/libuv/test/test-fail-always.c +29 -0
- data/ext/noderb_extension/libuv/test/test-get-currentexe.c +53 -0
- data/ext/noderb_extension/libuv/test/test-getaddrinfo.c +110 -0
- data/ext/noderb_extension/libuv/test/test-gethostbyname.c +192 -0
- data/ext/noderb_extension/libuv/test/test-getsockname.c +196 -0
- data/ext/noderb_extension/libuv/test/test-hrtime.c +51 -0
- data/ext/noderb_extension/libuv/test/test-idle.c +83 -0
- data/ext/noderb_extension/libuv/test/test-list.h +165 -0
- data/ext/noderb_extension/libuv/test/test-loop-handles.c +361 -0
- data/ext/noderb_extension/libuv/test/test-pass-always.c +28 -0
- data/ext/noderb_extension/libuv/test/test-ping-pong.c +256 -0
- data/ext/noderb_extension/libuv/test/test-pipe-bind-error.c +148 -0
- data/ext/noderb_extension/libuv/test/test-ref.c +91 -0
- data/ext/noderb_extension/libuv/test/test-shutdown-eof.c +183 -0
- data/ext/noderb_extension/libuv/test/test-spawn.c +345 -0
- data/ext/noderb_extension/libuv/test/test-tcp-bind-error.c +204 -0
- data/ext/noderb_extension/libuv/test/test-tcp-bind6-error.c +164 -0
- data/ext/noderb_extension/libuv/test/test-tcp-writealot.c +198 -0
- data/ext/noderb_extension/libuv/test/test-timer-again.c +141 -0
- data/ext/noderb_extension/libuv/test/test-timer.c +134 -0
- data/ext/noderb_extension/noderb.c +340 -0
- data/ext/noderb_extension/noderb.h +2 -0
- data/lib/noderb/connection.rb +21 -0
- data/lib/noderb/process.rb +17 -0
- data/lib/noderb.rb +25 -0
- metadata +470 -0
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* cancel.c
|
|
3
|
+
*
|
|
4
|
+
* Description:
|
|
5
|
+
* POSIX thread functions related to thread cancellation.
|
|
6
|
+
*
|
|
7
|
+
* --------------------------------------------------------------------------
|
|
8
|
+
*
|
|
9
|
+
* Pthreads-win32 - POSIX Threads Library for Win32
|
|
10
|
+
* Copyright(C) 1998 John E. Bossom
|
|
11
|
+
* Copyright(C) 1999,2005 Pthreads-win32 contributors
|
|
12
|
+
*
|
|
13
|
+
* Contact Email: rpj@callisto.canberra.edu.au
|
|
14
|
+
*
|
|
15
|
+
* The current list of contributors is contained
|
|
16
|
+
* in the file CONTRIBUTORS included with the source
|
|
17
|
+
* code distribution. The list can also be seen at the
|
|
18
|
+
* following World Wide Web location:
|
|
19
|
+
* http://sources.redhat.com/pthreads-win32/contributors.html
|
|
20
|
+
*
|
|
21
|
+
* This library is free software; you can redistribute it and/or
|
|
22
|
+
* modify it under the terms of the GNU Lesser General Public
|
|
23
|
+
* License as published by the Free Software Foundation; either
|
|
24
|
+
* version 2 of the License, or (at your option) any later version.
|
|
25
|
+
*
|
|
26
|
+
* This library is distributed in the hope that it will be useful,
|
|
27
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
28
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
29
|
+
* Lesser General Public License for more details.
|
|
30
|
+
*
|
|
31
|
+
* You should have received a copy of the GNU Lesser General Public
|
|
32
|
+
* License along with this library in the file COPYING.LIB;
|
|
33
|
+
* if not, write to the Free Software Foundation, Inc.,
|
|
34
|
+
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
#include "pthread.h"
|
|
38
|
+
#include "implement.h"
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
#include "pthread_setcancelstate.c"
|
|
42
|
+
#include "pthread_setcanceltype.c"
|
|
43
|
+
#include "pthread_testcancel.c"
|
|
44
|
+
#include "pthread_cancel.c"
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* cleanup.c
|
|
3
|
+
*
|
|
4
|
+
* Description:
|
|
5
|
+
* This translation unit implements routines associated
|
|
6
|
+
* with cleaning up threads.
|
|
7
|
+
*
|
|
8
|
+
*
|
|
9
|
+
* --------------------------------------------------------------------------
|
|
10
|
+
*
|
|
11
|
+
* Pthreads-win32 - POSIX Threads Library for Win32
|
|
12
|
+
* Copyright(C) 1998 John E. Bossom
|
|
13
|
+
* Copyright(C) 1999,2005 Pthreads-win32 contributors
|
|
14
|
+
*
|
|
15
|
+
* Contact Email: rpj@callisto.canberra.edu.au
|
|
16
|
+
*
|
|
17
|
+
* The current list of contributors is contained
|
|
18
|
+
* in the file CONTRIBUTORS included with the source
|
|
19
|
+
* code distribution. The list can also be seen at the
|
|
20
|
+
* following World Wide Web location:
|
|
21
|
+
* http://sources.redhat.com/pthreads-win32/contributors.html
|
|
22
|
+
*
|
|
23
|
+
* This library is free software; you can redistribute it and/or
|
|
24
|
+
* modify it under the terms of the GNU Lesser General Public
|
|
25
|
+
* License as published by the Free Software Foundation; either
|
|
26
|
+
* version 2 of the License, or (at your option) any later version.
|
|
27
|
+
*
|
|
28
|
+
* This library is distributed in the hope that it will be useful,
|
|
29
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
30
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
31
|
+
* Lesser General Public License for more details.
|
|
32
|
+
*
|
|
33
|
+
* You should have received a copy of the GNU Lesser General Public
|
|
34
|
+
* License along with this library in the file COPYING.LIB;
|
|
35
|
+
* if not, write to the Free Software Foundation, Inc.,
|
|
36
|
+
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
#include "pthread.h"
|
|
40
|
+
#include "implement.h"
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
/*
|
|
44
|
+
* The functions ptw32_pop_cleanup and ptw32_push_cleanup
|
|
45
|
+
* are implemented here for applications written in C with no
|
|
46
|
+
* SEH or C++ destructor support.
|
|
47
|
+
*/
|
|
48
|
+
|
|
49
|
+
ptw32_cleanup_t *
|
|
50
|
+
ptw32_pop_cleanup (int execute)
|
|
51
|
+
/*
|
|
52
|
+
* ------------------------------------------------------
|
|
53
|
+
* DOCPUBLIC
|
|
54
|
+
* This function pops the most recently pushed cleanup
|
|
55
|
+
* handler. If execute is nonzero, then the cleanup handler
|
|
56
|
+
* is executed if non-null.
|
|
57
|
+
*
|
|
58
|
+
* PARAMETERS
|
|
59
|
+
* execute
|
|
60
|
+
* if nonzero, execute the cleanup handler
|
|
61
|
+
*
|
|
62
|
+
*
|
|
63
|
+
* DESCRIPTION
|
|
64
|
+
* This function pops the most recently pushed cleanup
|
|
65
|
+
* handler. If execute is nonzero, then the cleanup handler
|
|
66
|
+
* is executed if non-null.
|
|
67
|
+
* NOTE: specify 'execute' as nonzero to avoid duplication
|
|
68
|
+
* of common cleanup code.
|
|
69
|
+
*
|
|
70
|
+
* RESULTS
|
|
71
|
+
* N/A
|
|
72
|
+
*
|
|
73
|
+
* ------------------------------------------------------
|
|
74
|
+
*/
|
|
75
|
+
{
|
|
76
|
+
ptw32_cleanup_t *cleanup;
|
|
77
|
+
|
|
78
|
+
cleanup = (ptw32_cleanup_t *) pthread_getspecific (ptw32_cleanupKey);
|
|
79
|
+
|
|
80
|
+
if (cleanup != NULL)
|
|
81
|
+
{
|
|
82
|
+
if (execute && (cleanup->routine != NULL))
|
|
83
|
+
{
|
|
84
|
+
|
|
85
|
+
(*cleanup->routine) (cleanup->arg);
|
|
86
|
+
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
pthread_setspecific (ptw32_cleanupKey, (void *) cleanup->prev);
|
|
90
|
+
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
return (cleanup);
|
|
94
|
+
|
|
95
|
+
} /* ptw32_pop_cleanup */
|
|
96
|
+
|
|
97
|
+
|
|
98
|
+
void
|
|
99
|
+
ptw32_push_cleanup (ptw32_cleanup_t * cleanup,
|
|
100
|
+
ptw32_cleanup_callback_t routine, void *arg)
|
|
101
|
+
/*
|
|
102
|
+
* ------------------------------------------------------
|
|
103
|
+
* DOCPUBLIC
|
|
104
|
+
* This function pushes a new cleanup handler onto the thread's stack
|
|
105
|
+
* of cleanup handlers. Each cleanup handler pushed onto the stack is
|
|
106
|
+
* popped and invoked with the argument 'arg' when
|
|
107
|
+
* a) the thread exits by calling 'pthread_exit',
|
|
108
|
+
* b) when the thread acts on a cancellation request,
|
|
109
|
+
* c) or when the thread calls pthread_cleanup_pop with a nonzero
|
|
110
|
+
* 'execute' argument
|
|
111
|
+
*
|
|
112
|
+
* PARAMETERS
|
|
113
|
+
* cleanup
|
|
114
|
+
* a pointer to an instance of pthread_cleanup_t,
|
|
115
|
+
*
|
|
116
|
+
* routine
|
|
117
|
+
* pointer to a cleanup handler,
|
|
118
|
+
*
|
|
119
|
+
* arg
|
|
120
|
+
* parameter to be passed to the cleanup handler
|
|
121
|
+
*
|
|
122
|
+
*
|
|
123
|
+
* DESCRIPTION
|
|
124
|
+
* This function pushes a new cleanup handler onto the thread's stack
|
|
125
|
+
* of cleanup handlers. Each cleanup handler pushed onto the stack is
|
|
126
|
+
* popped and invoked with the argument 'arg' when
|
|
127
|
+
* a) the thread exits by calling 'pthread_exit',
|
|
128
|
+
* b) when the thread acts on a cancellation request,
|
|
129
|
+
* c) or when the thrad calls pthread_cleanup_pop with a nonzero
|
|
130
|
+
* 'execute' argument
|
|
131
|
+
* NOTE: pthread_push_cleanup, ptw32_pop_cleanup must be paired
|
|
132
|
+
* in the same lexical scope.
|
|
133
|
+
*
|
|
134
|
+
* RESULTS
|
|
135
|
+
* pthread_cleanup_t *
|
|
136
|
+
* pointer to the previous cleanup
|
|
137
|
+
*
|
|
138
|
+
* ------------------------------------------------------
|
|
139
|
+
*/
|
|
140
|
+
{
|
|
141
|
+
cleanup->routine = routine;
|
|
142
|
+
cleanup->arg = arg;
|
|
143
|
+
|
|
144
|
+
cleanup->prev = (ptw32_cleanup_t *) pthread_getspecific (ptw32_cleanupKey);
|
|
145
|
+
|
|
146
|
+
pthread_setspecific (ptw32_cleanupKey, (void *) cleanup);
|
|
147
|
+
|
|
148
|
+
} /* ptw32_push_cleanup */
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* condvar.c
|
|
3
|
+
*
|
|
4
|
+
* Description:
|
|
5
|
+
* This translation unit implements condition variables and their primitives.
|
|
6
|
+
*
|
|
7
|
+
*
|
|
8
|
+
* --------------------------------------------------------------------------
|
|
9
|
+
*
|
|
10
|
+
* Pthreads-win32 - POSIX Threads Library for Win32
|
|
11
|
+
* Copyright(C) 1998 John E. Bossom
|
|
12
|
+
* Copyright(C) 1999,2005 Pthreads-win32 contributors
|
|
13
|
+
*
|
|
14
|
+
* Contact Email: rpj@callisto.canberra.edu.au
|
|
15
|
+
*
|
|
16
|
+
* The current list of contributors is contained
|
|
17
|
+
* in the file CONTRIBUTORS included with the source
|
|
18
|
+
* code distribution. The list can also be seen at the
|
|
19
|
+
* following World Wide Web location:
|
|
20
|
+
* http://sources.redhat.com/pthreads-win32/contributors.html
|
|
21
|
+
*
|
|
22
|
+
* This library is free software; you can redistribute it and/or
|
|
23
|
+
* modify it under the terms of the GNU Lesser General Public
|
|
24
|
+
* License as published by the Free Software Foundation; either
|
|
25
|
+
* version 2 of the License, or (at your option) any later version.
|
|
26
|
+
*
|
|
27
|
+
* This library is distributed in the hope that it will be useful,
|
|
28
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
29
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
30
|
+
* Lesser General Public License for more details.
|
|
31
|
+
*
|
|
32
|
+
* You should have received a copy of the GNU Lesser General Public
|
|
33
|
+
* License along with this library in the file COPYING.LIB;
|
|
34
|
+
* if not, write to the Free Software Foundation, Inc.,
|
|
35
|
+
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
|
36
|
+
*
|
|
37
|
+
*/
|
|
38
|
+
|
|
39
|
+
#include "pthread.h"
|
|
40
|
+
#include "implement.h"
|
|
41
|
+
|
|
42
|
+
#include "ptw32_cond_check_need_init.c"
|
|
43
|
+
#include "pthread_condattr_init.c"
|
|
44
|
+
#include "pthread_condattr_destroy.c"
|
|
45
|
+
#include "pthread_condattr_getpshared.c"
|
|
46
|
+
#include "pthread_condattr_setpshared.c"
|
|
47
|
+
#include "pthread_cond_init.c"
|
|
48
|
+
#include "pthread_cond_destroy.c"
|
|
49
|
+
#include "pthread_cond_wait.c"
|
|
50
|
+
#include "pthread_cond_signal.c"
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
/* config.h */
|
|
2
|
+
|
|
3
|
+
#ifndef PTW32_CONFIG_H
|
|
4
|
+
#define PTW32_CONFIG_H
|
|
5
|
+
|
|
6
|
+
/*********************************************************************
|
|
7
|
+
* Defaults: see target specific redefinitions below.
|
|
8
|
+
*********************************************************************/
|
|
9
|
+
|
|
10
|
+
/* We're building the pthreads-win32 library */
|
|
11
|
+
#define PTW32_BUILD
|
|
12
|
+
|
|
13
|
+
/* Do we know about the C type sigset_t? */
|
|
14
|
+
#undef HAVE_SIGSET_T
|
|
15
|
+
|
|
16
|
+
/* Define if you have the <signal.h> header file. */
|
|
17
|
+
#undef HAVE_SIGNAL_H
|
|
18
|
+
|
|
19
|
+
/* Define if you have the Borland TASM32 or compatible assembler. */
|
|
20
|
+
#undef HAVE_TASM32
|
|
21
|
+
|
|
22
|
+
/* Define if you don't have Win32 DuplicateHandle. (eg. WinCE) */
|
|
23
|
+
#undef NEED_DUPLICATEHANDLE
|
|
24
|
+
|
|
25
|
+
/* Define if you don't have Win32 _beginthreadex. (eg. WinCE) */
|
|
26
|
+
#undef NEED_CREATETHREAD
|
|
27
|
+
|
|
28
|
+
/* Define if you don't have Win32 errno. (eg. WinCE) */
|
|
29
|
+
#undef NEED_ERRNO
|
|
30
|
+
|
|
31
|
+
/* Define if you don't have Win32 calloc. (eg. WinCE) */
|
|
32
|
+
#undef NEED_CALLOC
|
|
33
|
+
|
|
34
|
+
/* Define if you don't have Win32 ftime. (eg. WinCE) */
|
|
35
|
+
#undef NEED_FTIME
|
|
36
|
+
|
|
37
|
+
/* Define if you don't have Win32 semaphores. (eg. WinCE 2.1 or earlier) */
|
|
38
|
+
#undef NEED_SEM
|
|
39
|
+
|
|
40
|
+
/* Define if you need to convert string parameters to unicode. (eg. WinCE) */
|
|
41
|
+
#undef NEED_UNICODE_CONSTS
|
|
42
|
+
|
|
43
|
+
/* Define if your C (not C++) compiler supports "inline" functions. */
|
|
44
|
+
#undef HAVE_C_INLINE
|
|
45
|
+
|
|
46
|
+
/* Do we know about type mode_t? */
|
|
47
|
+
#undef HAVE_MODE_T
|
|
48
|
+
|
|
49
|
+
/*
|
|
50
|
+
* Define if GCC has atomic builtins, i.e. __sync_* intrinsics
|
|
51
|
+
* __sync_lock_* is implemented in mingw32 gcc 4.5.2 at least
|
|
52
|
+
* so this define does not turn those on or off. If you get an
|
|
53
|
+
* error from __sync_lock* then consider upgrading your gcc.
|
|
54
|
+
*/
|
|
55
|
+
#undef HAVE_GCC_ATOMIC_BUILTINS
|
|
56
|
+
|
|
57
|
+
/* Define if you have the timespec struct */
|
|
58
|
+
#undef HAVE_STRUCT_TIMESPEC
|
|
59
|
+
|
|
60
|
+
/* Define if you don't have the GetProcessAffinityMask() */
|
|
61
|
+
#undef NEED_PROCESS_AFFINITY_MASK
|
|
62
|
+
|
|
63
|
+
/* Define if your version of Windows TLSGetValue() clears WSALastError
|
|
64
|
+
* and calling SetLastError() isn't enough restore it. You'll also need to
|
|
65
|
+
* link against wsock32.lib (or libwsock32.a for MinGW).
|
|
66
|
+
*/
|
|
67
|
+
#undef RETAIN_WSALASTERROR
|
|
68
|
+
|
|
69
|
+
/*
|
|
70
|
+
# ----------------------------------------------------------------------
|
|
71
|
+
# The library can be built with some alternative behaviour to better
|
|
72
|
+
# facilitate development of applications on Win32 that will be ported
|
|
73
|
+
# to other POSIX systems.
|
|
74
|
+
#
|
|
75
|
+
# Nothing described here will make the library non-compliant and strictly
|
|
76
|
+
# compliant applications will not be affected in any way, but
|
|
77
|
+
# applications that make assumptions that POSIX does not guarantee are
|
|
78
|
+
# not strictly compliant and may fail or misbehave with some settings.
|
|
79
|
+
#
|
|
80
|
+
# PTW32_THREAD_ID_REUSE_INCREMENT
|
|
81
|
+
# Purpose:
|
|
82
|
+
# POSIX says that applications should assume that thread IDs can be
|
|
83
|
+
# recycled. However, Solaris (and some other systems) use a [very large]
|
|
84
|
+
# sequence number as the thread ID, which provides virtual uniqueness.
|
|
85
|
+
# This provides a very high but finite level of safety for applications
|
|
86
|
+
# that are not meticulous in tracking thread lifecycles e.g. applications
|
|
87
|
+
# that call functions which target detached threads without some form of
|
|
88
|
+
# thread exit synchronisation.
|
|
89
|
+
#
|
|
90
|
+
# Usage:
|
|
91
|
+
# Set to any value in the range: 0 <= value < 2^wordsize.
|
|
92
|
+
# Set to 0 to emulate reusable thread ID behaviour like Linux or *BSD.
|
|
93
|
+
# Set to 1 for unique thread IDs like Solaris (this is the default).
|
|
94
|
+
# Set to some factor of 2^wordsize to emulate smaller word size types
|
|
95
|
+
# (i.e. will wrap sooner). This might be useful to emulate some embedded
|
|
96
|
+
# systems.
|
|
97
|
+
#
|
|
98
|
+
# define PTW32_THREAD_ID_REUSE_INCREMENT 0
|
|
99
|
+
#
|
|
100
|
+
# ----------------------------------------------------------------------
|
|
101
|
+
*/
|
|
102
|
+
#undef PTW32_THREAD_ID_REUSE_INCREMENT
|
|
103
|
+
|
|
104
|
+
|
|
105
|
+
/*********************************************************************
|
|
106
|
+
* Target specific groups
|
|
107
|
+
*
|
|
108
|
+
* If you find that these are incorrect or incomplete please report it
|
|
109
|
+
* to the pthreads-win32 maintainer. Thanks.
|
|
110
|
+
*********************************************************************/
|
|
111
|
+
#if defined(WINCE)
|
|
112
|
+
#define NEED_DUPLICATEHANDLE
|
|
113
|
+
#define NEED_CREATETHREAD
|
|
114
|
+
#define NEED_ERRNO
|
|
115
|
+
#define NEED_CALLOC
|
|
116
|
+
#define NEED_FTIME
|
|
117
|
+
/* #define NEED_SEM */
|
|
118
|
+
#define NEED_UNICODE_CONSTS
|
|
119
|
+
#define NEED_PROCESS_AFFINITY_MASK
|
|
120
|
+
/* This may not be needed */
|
|
121
|
+
#define RETAIN_WSALASTERROR
|
|
122
|
+
#endif
|
|
123
|
+
|
|
124
|
+
#if defined(_UWIN)
|
|
125
|
+
#define HAVE_MODE_T
|
|
126
|
+
#define HAVE_STRUCT_TIMESPEC
|
|
127
|
+
#endif
|
|
128
|
+
|
|
129
|
+
#if defined(__GNUC__)
|
|
130
|
+
#define HAVE_C_INLINE
|
|
131
|
+
#endif
|
|
132
|
+
|
|
133
|
+
#if defined(__MINGW64__)
|
|
134
|
+
#define HAVE_MODE_T
|
|
135
|
+
#define HAVE_STRUCT_TIMESPEC
|
|
136
|
+
#elif defined(__MINGW32__)
|
|
137
|
+
#define HAVE_MODE_T
|
|
138
|
+
#endif
|
|
139
|
+
|
|
140
|
+
#if defined(__BORLANDC__)
|
|
141
|
+
#endif
|
|
142
|
+
|
|
143
|
+
#if defined(__WATCOMC__)
|
|
144
|
+
#endif
|
|
145
|
+
|
|
146
|
+
#if defined(__DMC__)
|
|
147
|
+
#define HAVE_SIGNAL_H
|
|
148
|
+
#define HAVE_C_INLINE
|
|
149
|
+
#endif
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
|
|
153
|
+
#endif
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* context.h
|
|
3
|
+
*
|
|
4
|
+
* Description:
|
|
5
|
+
* POSIX thread macros related to thread cancellation.
|
|
6
|
+
*
|
|
7
|
+
* --------------------------------------------------------------------------
|
|
8
|
+
*
|
|
9
|
+
* Pthreads-win32 - POSIX Threads Library for Win32
|
|
10
|
+
* Copyright(C) 1998 John E. Bossom
|
|
11
|
+
* Copyright(C) 1999,2005 Pthreads-win32 contributors
|
|
12
|
+
*
|
|
13
|
+
* Contact Email: rpj@callisto.canberra.edu.au
|
|
14
|
+
*
|
|
15
|
+
* The current list of contributors is contained
|
|
16
|
+
* in the file CONTRIBUTORS included with the source
|
|
17
|
+
* code distribution. The list can also be seen at the
|
|
18
|
+
* following World Wide Web location:
|
|
19
|
+
* http://sources.redhat.com/pthreads-win32/contributors.html
|
|
20
|
+
*
|
|
21
|
+
* This library is free software; you can redistribute it and/or
|
|
22
|
+
* modify it under the terms of the GNU Lesser General Public
|
|
23
|
+
* License as published by the Free Software Foundation; either
|
|
24
|
+
* version 2 of the License, or (at your option) any later version.
|
|
25
|
+
*
|
|
26
|
+
* This library is distributed in the hope that it will be useful,
|
|
27
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
28
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
29
|
+
* Lesser General Public License for more details.
|
|
30
|
+
*
|
|
31
|
+
* You should have received a copy of the GNU Lesser General Public
|
|
32
|
+
* License along with this library in the file COPYING.LIB;
|
|
33
|
+
* if not, write to the Free Software Foundation, Inc.,
|
|
34
|
+
* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
|
35
|
+
*/
|
|
36
|
+
|
|
37
|
+
#ifndef PTW32_CONTEXT_H
|
|
38
|
+
#define PTW32_CONTEXT_H
|
|
39
|
+
|
|
40
|
+
#undef PTW32_PROGCTR
|
|
41
|
+
|
|
42
|
+
#if defined(_M_IX86) || (defined(_X86_) && !defined(__amd64__))
|
|
43
|
+
#define PTW32_PROGCTR(Context) ((Context).Eip)
|
|
44
|
+
#endif
|
|
45
|
+
|
|
46
|
+
#if defined (_M_IA64) || defined(_IA64)
|
|
47
|
+
#define PTW32_PROGCTR(Context) ((Context).StIIP)
|
|
48
|
+
#endif
|
|
49
|
+
|
|
50
|
+
#if defined(_MIPS_) || defined(MIPS)
|
|
51
|
+
#define PTW32_PROGCTR(Context) ((Context).Fir)
|
|
52
|
+
#endif
|
|
53
|
+
|
|
54
|
+
#if defined(_ALPHA_)
|
|
55
|
+
#define PTW32_PROGCTR(Context) ((Context).Fir)
|
|
56
|
+
#endif
|
|
57
|
+
|
|
58
|
+
#if defined(_PPC_)
|
|
59
|
+
#define PTW32_PROGCTR(Context) ((Context).Iar)
|
|
60
|
+
#endif
|
|
61
|
+
|
|
62
|
+
#if defined(_AMD64_) || defined(__amd64__)
|
|
63
|
+
#define PTW32_PROGCTR(Context) ((Context).Rip)
|
|
64
|
+
#endif
|
|
65
|
+
|
|
66
|
+
#if defined(_ARM_) || defined(ARM)
|
|
67
|
+
#define PTW32_PROGCTR(Context) ((Context).Pc)
|
|
68
|
+
#endif
|
|
69
|
+
|
|
70
|
+
#if !defined(PTW32_PROGCTR)
|
|
71
|
+
#error Module contains CPU-specific code; modify and recompile.
|
|
72
|
+
#endif
|
|
73
|
+
|
|
74
|
+
#endif
|