1 /* Copyright 1999-2006 The Apache Software Foundation or its licensors, as
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
19 * @brief This file in included in all Apache source code. It contains definitions
20 * of facilities available on _this_ operating system (HAVE_* macros),
21 * and prototypes of OS specific functions defined in os.c or os-inline.c
23 * @defgroup APACHE_OS_TPF tpf
31 #define PLATFORM "TPF"
38 #include "ap_config.h"
42 #define FD_SETSIZE 2048
46 #define NBBY 8 /* number of bits in a byte */
47 #define NFDBITS (sizeof(fd_mask) * NBBY)
48 #define howmany(x, y) (((x)+((y)-1))/(y))
50 typedef struct fd_set {
51 fd_mask fds_bits [howmany(FD_SETSIZE, NFDBITS)];
54 #define FD_CLR(n, p)((p)->fds_bits[(n)/NFDBITS] &= ~(1 << ((n) % NFDBITS)))
55 #define FD_ISSET(n, p)((p)->fds_bits[(n)/NFDBITS] & (1 <<((n) % NFDBITS)))
56 #define FD_ZERO(p) memset((char *)(p), 0, sizeof(*(p)))
61 #define FD_SET(n, p) (0)
66 INETD_SERVER_INPUT inetd_server;
67 void *scoreboard_heap; /* scoreboard system heap address */
68 int scoreboard_fd; /* scoreboard file descriptor */
69 int slot; /* child number */
70 int generation; /* server generation number */
75 typedef struct apache_input APACHE_TPF_INPUT;
80 pid_t os_fork(struct server_rec *s, int slot);
81 int os_check_server(char *server);
83 extern char *ap_server_argv0;
84 extern int scoreboard_fd;
92 #endif /*! APACHE_OS_H*/