Apache HTTPD
framework
httpd-2.4.62
srclib
apr
include
arch
beos
apr_arch_threadproc.h
Go to the documentation of this file.
1
/* Licensed to the Apache Software Foundation (ASF) under one or more
2
* contributor license agreements. See the NOTICE file distributed with
3
* this work for additional information regarding copyright ownership.
4
* The ASF licenses this file to You under the Apache License, Version 2.0
5
* (the "License"); you may not use this file except in compliance with
6
* the License. You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#include "
apr_thread_proc.h
"
18
#include "apr_arch_file_io.h"
19
#include "
apr_file_io.h
"
20
#include "
apr_thread_proc.h
"
21
#include "
apr_general.h
"
22
#include "
apr_portable.h
"
23
#include <kernel/OS.h>
24
#include <signal.h>
25
#include <string.h>
26
#include <sys/wait.h>
27
#include <image.h>
28
29
#ifndef THREAD_PROC_H
30
#define THREAD_PROC_H
31
32
#define SHELL_PATH "/bin/sh"
33
34
#define PTHREAD_CANCEL_AYNCHRONOUS CANCEL_ASYNCH;
35
#define PTHREAD_CANCEL_DEFERRED CANCEL_DEFER;
36
37
#define PTHREAD_CANCEL_ENABLE CANCEL_ENABLE;
38
#define PTHREAD_CANCEL_DISABLE CANCEL_DISABLE;
39
40
#define BEOS_MAX_DATAKEYS 128
41
42
struct
apr_thread_t
{
43
apr_pool_t
*
pool
;
44
thread_id
td
;
45
void
*
data
;
46
apr_thread_start_t
func
;
47
apr_status_t
exitval
;
48
};
49
50
struct
apr_threadattr_t
{
51
apr_pool_t
*
pool
;
52
int32
attr
;
53
int
detached
;
54
int
joinable
;
55
};
56
57
struct
apr_threadkey_t
{
58
apr_pool_t
*
pool
;
59
int32
key
;
60
};
61
62
struct
beos_private_data
{
63
const
void
**
data
;
64
int
count
;
65
volatile
thread_id
td
;
66
};
67
68
struct
beos_key
{
69
int
assigned
;
70
int
count
;
71
sem_id
lock
;
72
int32
ben_lock
;
73
void (*
destructor
) (
void
*);
74
};
75
76
struct
apr_procattr_t
{
77
apr_pool_t
*
pool
;
78
apr_file_t
*
parent_in
;
79
apr_file_t
*
child_in
;
80
apr_file_t
*
parent_out
;
81
apr_file_t
*
child_out
;
82
apr_file_t
*
parent_err
;
83
apr_file_t
*
child_err
;
84
char
*
currdir
;
85
apr_int32_t
cmdtype
;
86
apr_int32_t
detached
;
87
};
88
89
struct
apr_thread_once_t
{
90
sem_id
sem
;
91
int
hit
;
92
};
93
94
#endif
/* ! THREAD_PROC_H */
95
apr_file_io.h
APR File I/O Handling.
apr_general.h
APR Miscellaneous library routines.
apr_portable.h
APR Portability Routines.
apr_thread_proc.h
APR Thread and Process Library.
size
apr_size_t size
Definition
apr_allocator.h:115
apr_status_t
int apr_status_t
Definition
apr_errno.h:44
apr_thread_start_t
void *(APR_THREAD_FUNC * apr_thread_start_t)(apr_thread_t *, void *)
Definition
apr_thread_proc.h:198
apr_file_t
Definition
apr_arch_file_io.h:97
apr_pool_t
Definition
apr_pools.c:562
apr_procattr_t
Definition
apr_arch_threadproc.h:76
apr_procattr_t::child_err
apr_file_t * child_err
Definition
apr_arch_threadproc.h:83
apr_procattr_t::detached
apr_int32_t detached
Definition
apr_arch_threadproc.h:86
apr_procattr_t::pool
apr_pool_t * pool
Definition
apr_arch_threadproc.h:77
apr_procattr_t::cmdtype
apr_int32_t cmdtype
Definition
apr_arch_threadproc.h:85
apr_procattr_t::parent_in
apr_file_t * parent_in
Definition
apr_arch_threadproc.h:78
apr_procattr_t::parent_out
apr_file_t * parent_out
Definition
apr_arch_threadproc.h:80
apr_procattr_t::child_out
apr_file_t * child_out
Definition
apr_arch_threadproc.h:81
apr_procattr_t::child_in
apr_file_t * child_in
Definition
apr_arch_threadproc.h:79
apr_procattr_t::currdir
char * currdir
Definition
apr_arch_threadproc.h:84
apr_procattr_t::parent_err
apr_file_t * parent_err
Definition
apr_arch_threadproc.h:82
apr_thread_once_t
Definition
apr_arch_threadproc.h:89
apr_thread_once_t::sem
sem_id sem
Definition
apr_arch_threadproc.h:90
apr_thread_once_t::hit
int hit
Definition
apr_arch_threadproc.h:91
apr_thread_t
Definition
apr_arch_threadproc.h:42
apr_thread_t::exitval
apr_status_t exitval
Definition
apr_arch_threadproc.h:47
apr_thread_t::td
thread_id td
Definition
apr_arch_threadproc.h:44
apr_thread_t::data
void * data
Definition
apr_arch_threadproc.h:45
apr_thread_t::pool
apr_pool_t * pool
Definition
apr_arch_threadproc.h:43
apr_thread_t::func
apr_thread_start_t func
Definition
apr_arch_threadproc.h:46
apr_threadattr_t
Definition
apr_arch_threadproc.h:50
apr_threadattr_t::attr
int32 attr
Definition
apr_arch_threadproc.h:52
apr_threadattr_t::joinable
int joinable
Definition
apr_arch_threadproc.h:54
apr_threadattr_t::pool
apr_pool_t * pool
Definition
apr_arch_threadproc.h:51
apr_threadattr_t::detached
int detached
Definition
apr_arch_threadproc.h:53
apr_threadkey_t
Definition
apr_arch_threadproc.h:57
apr_threadkey_t::pool
apr_pool_t * pool
Definition
apr_arch_threadproc.h:58
apr_threadkey_t::key
int32 key
Definition
apr_arch_threadproc.h:59
beos_key
Definition
apr_arch_threadproc.h:68
beos_key::count
int count
Definition
apr_arch_threadproc.h:70
beos_key::ben_lock
int32 ben_lock
Definition
apr_arch_threadproc.h:72
beos_key::destructor
void(* destructor)(void *)
Definition
apr_arch_threadproc.h:73
beos_key::assigned
int assigned
Definition
apr_arch_threadproc.h:69
beos_key::lock
sem_id lock
Definition
apr_arch_threadproc.h:71
beos_private_data
Definition
apr_arch_threadproc.h:62
beos_private_data::data
const void ** data
Definition
apr_arch_threadproc.h:63
beos_private_data::td
volatile thread_id td
Definition
apr_arch_threadproc.h:65
beos_private_data::count
int count
Definition
apr_arch_threadproc.h:64
Generated by
1.9.8