GME
13
|
00001 /* Licensed to the Apache Software Foundation (ASF) under one or more 00002 * contributor license agreements. See the NOTICE file distributed with 00003 * this work for additional information regarding copyright ownership. 00004 * The ASF licenses this file to You under the Apache License, Version 2.0 00005 * (the "License"); you may not use this file except in compliance with 00006 * the License. You may obtain a copy of the License at 00007 * 00008 * http://www.apache.org/licenses/LICENSE-2.0 00009 * 00010 * Unless required by applicable law or agreed to in writing, software 00011 * distributed under the License is distributed on an "AS IS" BASIS, 00012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 * See the License for the specific language governing permissions and 00014 * limitations under the License. 00015 */ 00016 00017 #include "apr.h" 00018 #include "apr_thread_proc.h" 00019 #include "apr_file_io.h" 00020 00021 #include <sys/wait.h> 00022 00023 #ifndef THREAD_PROC_H 00024 #define THREAD_PROC_H 00025 00026 #define SHELL_PATH "" 00027 #define APR_DEFAULT_STACK_SIZE 65536 00028 00029 struct apr_thread_t { 00030 apr_pool_t *pool; 00031 NXContext_t ctx; 00032 NXThreadId_t td; 00033 char *thread_name; 00034 apr_int32_t cancel; 00035 apr_int32_t cancel_how; 00036 void *data; 00037 apr_thread_start_t func; 00038 apr_status_t exitval; 00039 }; 00040 00041 struct apr_threadattr_t { 00042 apr_pool_t *pool; 00043 apr_size_t stack_size; 00044 apr_int32_t detach; 00045 char *thread_name; 00046 }; 00047 00048 struct apr_threadkey_t { 00049 apr_pool_t *pool; 00050 NXKey_t key; 00051 }; 00052 00053 struct apr_procattr_t { 00054 apr_pool_t *pool; 00055 apr_file_t *parent_in; 00056 apr_file_t *child_in; 00057 apr_file_t *parent_out; 00058 apr_file_t *child_out; 00059 apr_file_t *parent_err; 00060 apr_file_t *child_err; 00061 char *currdir; 00062 apr_int32_t cmdtype; 00063 apr_int32_t detached; 00064 apr_int32_t addrspace; 00065 }; 00066 00067 struct apr_thread_once_t { 00068 unsigned long value; 00069 }; 00070 00071 /* 00072 struct apr_proc_t { 00073 apr_pool_t *pool; 00074 pid_t pid; 00075 apr_procattr_t *attr; 00076 }; 00077 */ 00078 00079 #endif /* ! THREAD_PROC_H */ 00080