summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--network_io/unix/sendrecv.c13
-rw-r--r--threadproc/unix/thread.c93
-rw-r--r--threadproc/unix/threadpriv.c9
3 files changed, 115 insertions, 0 deletions
diff --git a/network_io/unix/sendrecv.c b/network_io/unix/sendrecv.c
index 0297018bd..e862157d0 100644
--- a/network_io/unix/sendrecv.c
+++ b/network_io/unix/sendrecv.c
@@ -712,3 +712,16 @@ apr_status_t apr_sendfile(apr_socket_t * sock, apr_file_t * file,
#error or change APR_HAS_SENDFILE in apr.h to 0.
#endif /* __linux__, __FreeBSD__, __HPUX__, _AIX, __MVS__, Tru64/OSF1 */
#endif /* APR_HAS_SENDFILE */
+
+#if !APR_HAS_SENDFILE
+/* currently, exports.c includes a reference to apr_sendfile() even if
+ * apr_sendfile() doesn't work on the platform;
+ * this dummy version is just to get exports.c to compile/link
+ */
+apr_status_t apr_sendfile(apr_socket_t *sock, apr_file_t *file,
+ apr_hdtr_t *hdtr, apr_off_t *offset, apr_size_t *len,
+ apr_int32_t flags)
+{
+ return APR_ENOTIMPL;
+}
+#endif
diff --git a/threadproc/unix/thread.c b/threadproc/unix/thread.c
index 5f47c5f39..896df2543 100644
--- a/threadproc/unix/thread.c
+++ b/threadproc/unix/thread.c
@@ -233,3 +233,96 @@ apr_status_t apr_put_os_thread(apr_thread_t **thd, apr_os_thread_t *thethd,
#endif /* HAVE_PTHREAD_H */
#endif /* APR_HAS_THREADS */
+#if !APR_HAS_THREADS
+
+apr_status_t apr_create_thread(apr_thread_t **new_thread, apr_threadattr_t *attr,
+ apr_thread_start_t func, void *data,
+ apr_pool_t *cont)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_create_threadattr(apr_threadattr_t **new, apr_pool_t *cont)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_create_thread_private(apr_threadkey_t **key, void (*dest)(void *),
+ apr_pool_t *cont)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_delete_thread_private(apr_threadkey_t *key)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_get_os_thread(void); /* avoid warning for no prototype */
+
+apr_status_t apr_get_os_thread(void)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_getthreadattr_detach(apr_threadattr_t *attr)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_get_threaddata(void **data, const char *key, apr_thread_t *thread)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_get_threadkeydata(void **data, const char *key,
+ apr_threadkey_t *threadkey)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_get_thread_private(void **new_mem, apr_threadkey_t *key)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_setthreadattr_detach(apr_threadattr_t *attr, apr_int32_t on)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_set_threaddata(void *data, const char *key,
+ apr_status_t (*cleanup)(void *),
+ apr_thread_t *thread)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_set_threadkeydata(void *data, const char *key,
+ apr_status_t (*cleanup) (void *),
+ apr_threadkey_t *threadkey)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_set_thread_private(void *priv, apr_threadkey_t *key)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_thread_detach(apr_thread_t *thd)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_thread_exit(apr_thread_t *thd, apr_status_t *retval)
+{
+ return APR_ENOTIMPL;
+}
+
+apr_status_t apr_thread_join(apr_status_t *retval, apr_thread_t *thd)
+{
+ return APR_ENOTIMPL;
+}
+
+#endif
diff --git a/threadproc/unix/threadpriv.c b/threadproc/unix/threadpriv.c
index 9fc5588c5..cb7a995fb 100644
--- a/threadproc/unix/threadpriv.c
+++ b/threadproc/unix/threadpriv.c
@@ -144,3 +144,12 @@ apr_status_t apr_put_os_threadkey(apr_threadkey_t **key,
}
#endif /* APR_HAVE_PTHREAD_H */
#endif /* APR_HAS_THREADS */
+
+#if !APR_HAS_THREADS
+apr_status_t apr_get_os_threadkey(void); /* avoid warning for no prototype */
+
+apr_status_t apr_get_os_threadkey(void)
+{
+ return APR_ENOTIMPL;
+}
+#endif