~alinuxninja/nginx-edge/trunk

« back to all changes in this revision

Viewing changes to debian/modules/ngx_pagespeed/psol/include/third_party/apr/src/include/arch/beos/apr_arch_threadproc.h

  • Committer: Vivian
  • Date: 2015-12-04 18:20:11 UTC
  • Revision ID: git-v1:a36f2bc32e884f7473b3a47040e5411306144d7d
* Do not extract psol.tar.gz

Show diffs side-by-side

added added

removed removed

Lines of Context:
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