summaryrefslogtreecommitdiff
path: root/APACHE_1_3_42/src/os/os2/os.h
diff options
context:
space:
mode:
Diffstat (limited to 'APACHE_1_3_42/src/os/os2/os.h')
-rw-r--r--APACHE_1_3_42/src/os/os2/os.h77
1 files changed, 77 insertions, 0 deletions
diff --git a/APACHE_1_3_42/src/os/os2/os.h b/APACHE_1_3_42/src/os/os2/os.h
new file mode 100644
index 0000000000..fa1f3fb8e7
--- /dev/null
+++ b/APACHE_1_3_42/src/os/os2/os.h
@@ -0,0 +1,77 @@
+/* Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef APACHE_OS_H
+#define APACHE_OS_H
+
+#define PLATFORM "OS/2"
+#define HAVE_CANONICAL_FILENAME
+#define HAVE_DRIVE_LETTERS
+#define HAVE_UNC_PATHS
+
+/*
+ * This file in included in all Apache source code. It contains definitions
+ * of facilities available on _this_ operating system (HAVE_* macros),
+ * and prototypes of OS specific functions defined in os.c or os-inline.c
+ */
+
+#if defined(__GNUC__) && !defined(INLINE)
+/* Compiler supports inline, so include the inlineable functions as
+ * part of the header
+ */
+#define INLINE extern __inline__
+
+INLINE int ap_os_is_path_absolute(const char *file);
+
+#include "os-inline.c"
+#endif
+
+#ifndef INLINE
+/* Compiler does not support inline, so prototype the inlineable functions
+ * as normal
+ */
+extern int ap_os_is_path_absolute(const char *file);
+#endif
+
+/* FIXME: the following should be implemented on this platform */
+#define ap_os_is_filename_valid(f) (1)
+
+/* Use a specialized kill() function */
+int ap_os_kill(int pid, int sig);
+
+/* Maps an OS error code to an error message */
+char *ap_os_error_message(int err);
+
+/* OS/2 doesn't have symlinks so S_ISLNK is always false */
+#define S_ISLNK(m) 0
+#define lstat(x, y) stat(x, y)
+
+#define isinf(n) (!isfinite(n))
+#define HAVE_ISINF
+#define HAVE_ISNAN
+
+/* strtol() correctly returns ERANGE on overflow, use it */
+#define ap_strtol strtol
+
+/* Dynamic loading functions */
+#define ap_os_dso_handle_t unsigned long
+void ap_os_dso_init(void);
+ap_os_dso_handle_t ap_os_dso_load(const char *);
+void ap_os_dso_unload(ap_os_dso_handle_t);
+void * ap_os_dso_sym(ap_os_dso_handle_t, const char *);
+const char *ap_os_dso_error(void);
+
+#endif /* ! APACHE_OS_H */