1
0
mirror of https://github.com/apache/httpd.git synced 2025-08-07 04:02:58 +03:00

remove OS/2 platform support

git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@758929 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Jeff Trawick
2009-03-26 23:47:52 +00:00
parent c606f7b144
commit ee32468a33
37 changed files with 58 additions and 297 deletions

2
LAYOUT
View File

@@ -143,8 +143,6 @@ os/ .....................
netware/ ................ netware/ ................
os2/ ....................
tpf/ .................... tpf/ ....................
samples/ ................ samples/ ................

View File

@@ -231,5 +231,3 @@ suexec:
x-local-distclean: x-local-distclean:
@rm -rf autom4te.cache @rm -rf autom4te.cache
include $(top_srcdir)/os/os2/core.mk

View File

@@ -53,14 +53,6 @@ CMD="$SH_LIBTOOL --mode=install cp $DSOARCHIVE $TARGETDIR/"
echo $CMD echo $CMD
$CMD || exit $? $CMD || exit $?
if test "$SYS" = "OS/2"
then
# on OS/2, aplibtool --install doesn't copy the .la files & we can't
# rename DLLs to have a .so extension or they won't load so none of the
# steps below make sense.
exit 0
fi
if test -s "$TARGETDIR/$DSOARCHIVE_BASENAME" if test -s "$TARGETDIR/$DSOARCHIVE_BASENAME"
then then
DLNAME=`sed -n "/^dlname=/{s/.*='\([^']*\)'/\1/;p;}" $TARGETDIR/$DSOARCHIVE_BASENAME` DLNAME=`sed -n "/^dlname=/{s/.*='\([^']*\)'/\1/;p;}" $TARGETDIR/$DSOARCHIVE_BASENAME`

View File

@@ -227,56 +227,34 @@ APR_ADDTO(INCLUDES, $APU_INCLUDES)
dnl Add in path to PCRE includes dnl Add in path to PCRE includes
APR_ADDTO(INCLUDES, $PCRE_INCLUDES) APR_ADDTO(INCLUDES, $PCRE_INCLUDES)
echo $ac_n "${nl}Applying OS-specific hints for httpd ...${nl}" if test "x$LTFLAGS" = "x"; then
LTFLAGS='--silent'
case $host in fi
*os2*) my_libtool=`$apr_config --apr-libtool`
# Use a custom made libtool replacement LIBTOOL="$my_libtool \$(LTFLAGS)"
echo "using aplibtool" libtoolversion=`$my_libtool --version`
LIBTOOL="$abs_srcdir/srclib/apr/build/aplibtool" case $libtoolversion in
SH_LIBTOOL="$LIBTOOL --shared --export-all" *1.[[45]]* | *[[2-9]].[[0-9]]*)
SH_LIBS="\$(ALL_LIBS)" SH_LIBTOOL='$(LIBTOOL)'
CORE_IMPLIB_FILE="ApacheCoreOS2.la" SHLTCFLAGS="-prefer-pic"
CORE_IMPLIB="$abs_srcdir/server/$CORE_IMPLIB_FILE" LTCFLAGS="-prefer-non-pic -static"
MK_IMPLIB="emximp" ;;
other_targets="$other_targets os2core" *)
INSTALL_PROG_FLAGS="-e .exe" SH_LIBTOOL='$(SHELL) $(top_builddir)/shlibtool $(LTFLAGS)'
SHLTCFLAGS="" SHLTCFLAGS=""
LTCFLAGS="" LTCFLAGS=""
;; ;;
*)
if test "x$LTFLAGS" = "x"; then
LTFLAGS='--silent'
fi
my_libtool=`$apr_config --apr-libtool`
LIBTOOL="$my_libtool \$(LTFLAGS)"
libtoolversion=`$my_libtool --version`
case $libtoolversion in
*1.[[45]]* | *[[2-9]].[[0-9]]*)
SH_LIBTOOL='$(LIBTOOL)'
SHLTCFLAGS="-prefer-pic"
LTCFLAGS="-prefer-non-pic -static"
;;
*)
SH_LIBTOOL='$(SHELL) $(top_builddir)/shlibtool $(LTFLAGS)'
SHLTCFLAGS=""
LTCFLAGS=""
;;
esac
;;
esac esac
APACHE_SUBST(SHLTCFLAGS) APACHE_SUBST(SHLTCFLAGS)
APACHE_SUBST(LTCFLAGS) APACHE_SUBST(LTCFLAGS)
echo $ac_n "${nl}Applying OS-specific hints for httpd ...${nl}"
case $host in case $host in
*-apple-aux3*) *-apple-aux3*)
APR_SETVAR(APACHE_MPM, [prefork]) APR_SETVAR(APACHE_MPM, [prefork])
APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1]) APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
;; ;;
*os2-emx*)
APR_SETVAR(APACHE_MPM, [mpmt_os2])
APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1])
;;
*-linux-*) *-linux-*)
case `uname -r` in case `uname -r` in
2.[[2-9]]* ) 2.[[2-9]]* )

View File

@@ -73,7 +73,7 @@
<p>The error log is usually written to a file (typically <p>The error log is usually written to a file (typically
<code>error_log</code> on Unix systems and <code>error_log</code> on Unix systems and
<code>error.log</code> on Windows and OS/2). On Unix systems it <code>error.log</code> on Windows). On Unix systems it
is also possible to have the server send errors to is also possible to have the server send errors to
<code>syslog</code> or <a href="#piped">pipe them to a <code>syslog</code> or <a href="#piped">pipe them to a
program</a>.</p> program</a>.</p>

View File

@@ -1016,7 +1016,7 @@ in case of an error</description>
<name>ErrorLog</name> <name>ErrorLog</name>
<description>Location where the server will log errors</description> <description>Location where the server will log errors</description>
<syntax> ErrorLog <var>file-path</var>|syslog[:<var>facility</var>]</syntax> <syntax> ErrorLog <var>file-path</var>|syslog[:<var>facility</var>]</syntax>
<default>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows and OS/2)</default> <default>ErrorLog logs/error_log (Unix) ErrorLog logs/error.log (Windows)</default>
<contextlist><context>server config</context><context>virtual host</context> <contextlist><context>server config</context><context>virtual host</context>
</contextlist> </contextlist>

View File

@@ -774,8 +774,8 @@ indexing</description>
<dd>This returns the <code>Last-Modified</code> and <code>ETag</code> <dd>This returns the <code>Last-Modified</code> and <code>ETag</code>
values for the listed directory in the HTTP header. It is only valid values for the listed directory in the HTTP header. It is only valid
if the operating system and file system return appropriate stat() if the operating system and file system return appropriate stat()
results. Some Unix systems do so, as do OS2's JFS and Win32's results. Some Unix systems do so, as do Win32's
NTFS volumes. OS2 and Win32 FAT volumes, for example, do not. NTFS volumes. Win32 FAT volumes, for example, do not.
Once this feature is enabled, the client or proxy can track Once this feature is enabled, the client or proxy can track
changes to the list of files when they perform a <code>HEAD</code> changes to the list of files when they perform a <code>HEAD</code>
request. Note some operating systems correctly track new and request. Note some operating systems correctly track new and

View File

@@ -75,10 +75,7 @@ extern "C" {
* file with a relative pathname will have this added. * file with a relative pathname will have this added.
*/ */
#ifndef HTTPD_ROOT #ifndef HTTPD_ROOT
#ifdef OS2 #if defined(WIN32)
/** Set default for OS/2 file system */
#define HTTPD_ROOT "/os2httpd"
#elif defined(WIN32)
/** Set default for Windows file system */ /** Set default for Windows file system */
#define HTTPD_ROOT "/apache" #define HTTPD_ROOT "/apache"
#elif defined (NETWARE) #elif defined (NETWARE)
@@ -103,13 +100,7 @@ extern "C" {
* directive. * directive.
*/ */
#ifndef DOCUMENT_LOCATION #ifndef DOCUMENT_LOCATION
#ifdef OS2
/* Set default for OS/2 file system */
#define DOCUMENT_LOCATION HTTPD_ROOT "/docs"
#else
/* Set default for non OS/2 file system */
#define DOCUMENT_LOCATION HTTPD_ROOT "/htdocs" #define DOCUMENT_LOCATION HTTPD_ROOT "/htdocs"
#endif
#endif /* DOCUMENT_LOCATION */ #endif /* DOCUMENT_LOCATION */
/** Maximum number of dynamically loaded modules */ /** Maximum number of dynamically loaded modules */
@@ -122,7 +113,7 @@ extern "C" {
/** The name of the log files */ /** The name of the log files */
#ifndef DEFAULT_ERRORLOG #ifndef DEFAULT_ERRORLOG
#if defined(OS2) || defined(WIN32) #if defined(WIN32)
#define DEFAULT_ERRORLOG "logs/error.log" #define DEFAULT_ERRORLOG "logs/error.log"
#else #else
#define DEFAULT_ERRORLOG "logs/error_log" #define DEFAULT_ERRORLOG "logs/error_log"
@@ -131,12 +122,7 @@ extern "C" {
/** Define this to be what your per-directory security files are called */ /** Define this to be what your per-directory security files are called */
#ifndef DEFAULT_ACCESS_FNAME #ifndef DEFAULT_ACCESS_FNAME
#ifdef OS2
/* Set default for OS/2 file system */
#define DEFAULT_ACCESS_FNAME "htaccess"
#else
#define DEFAULT_ACCESS_FNAME ".htaccess" #define DEFAULT_ACCESS_FNAME ".htaccess"
#endif
#endif /* DEFAULT_ACCESS_FNAME */ #endif /* DEFAULT_ACCESS_FNAME */
/** The name of the server config file */ /** The name of the server config file */
@@ -1603,7 +1589,7 @@ AP_DECLARE(char *) ap_make_full_path(apr_pool_t *a, const char *dir, const char
* Test if the given path has an an absolute path. * Test if the given path has an an absolute path.
* @param p The pool to allocate from * @param p The pool to allocate from
* @param dir The directory name * @param dir The directory name
* @note The converse is not necessarily true, some OS's (Win32/OS2/Netware) have * @note The converse is not necessarily true, some OS's (Win32/Netware) have
* multiple forms of absolute paths. This only reports if the path is absolute * multiple forms of absolute paths. This only reports if the path is absolute
* in a canonical sense. * in a canonical sense.
*/ */

View File

@@ -107,8 +107,8 @@ static int set_group_privs(void)
else else
name = ap_unixd_config.user_name; name = ap_unixd_config.user_name;
#if !defined(OS2) && !defined(TPF) #if !defined(TPF)
/* OS/2 and TPF don't support groups. */ /* TPF doesn't support groups. */
/* /*
* Set the GID before initgroups(), since on some platforms * Set the GID before initgroups(), since on some platforms
@@ -129,7 +129,7 @@ static int set_group_privs(void)
"and Group %u", name, (unsigned)ap_unixd_config.group_id); "and Group %u", name, (unsigned)ap_unixd_config.group_id);
return -1; return -1;
} }
#endif /* !defined(OS2) && !defined(TPF) */ #endif /* !defined(TPF) */
} }
return 0; return 0;
} }
@@ -230,7 +230,7 @@ unixd_set_user(cmd_parms *cmd, void *dummy,
ap_unixd_config.user_name = arg; ap_unixd_config.user_name = arg;
ap_unixd_config.user_id = ap_uname2id(arg); ap_unixd_config.user_id = ap_uname2id(arg);
#if !defined (BIG_SECURITY_HOLE) && !defined (OS2) #if !defined (BIG_SECURITY_HOLE)
if (ap_unixd_config.user_id == 0) { if (ap_unixd_config.user_id == 0) {
return "Error:\tApache has not been designed to serve pages while\n" return "Error:\tApache has not been designed to serve pages while\n"
"\trunning as root. There are known race conditions that\n" "\trunning as root. There are known race conditions that\n"

View File

@@ -10,14 +10,6 @@ else
dav_fs_enable=$dav_enable dav_fs_enable=$dav_enable
fi fi
case "$host" in
*os2*)
# OS/2 DLLs must resolve all symbols at build time
# and we need some from main DAV module
dav_fs_objects="$dav_fs_objects ../main/mod_dav.la"
;;
esac
APACHE_MODULE(dav_fs, DAV provider for the filesystem, $dav_fs_objects, , $dav_fs_enable) APACHE_MODULE(dav_fs, DAV provider for the filesystem, $dav_fs_objects, , $dav_fs_enable)
APACHE_MODPATH_FINISH APACHE_MODPATH_FINISH

View File

@@ -4,14 +4,6 @@ APACHE_MODPATH_INIT(dav/lock)
dav_lock_objects="mod_dav_lock.lo locks.lo" dav_lock_objects="mod_dav_lock.lo locks.lo"
case "$host" in
*os2*)
# OS/2 DLLs must resolve all symbols at build time
# and we need some from main DAV module
dav_lock_objects="$dav_lock_objects ../main/mod_dav.la"
;;
esac
APACHE_MODULE(dav_lock, DAV provider for generic locking, $dav_lock_objects, , no) APACHE_MODULE(dav_lock, DAV provider for generic locking, $dav_lock_objects, , no)
APACHE_MODPATH_FINISH APACHE_MODPATH_FINISH

View File

@@ -54,7 +54,7 @@
#include "http_protocol.h" #include "http_protocol.h"
#include "ap_config.h" #include "ap_config.h"
#if !defined(OS2) && !defined(WIN32) && !defined(NETWARE) #if !defined(WIN32) && !defined(NETWARE)
#include "unixd.h" #include "unixd.h"
#define MOD_EXIPC_SET_MUTEX_PERMS /* XXX Apache should define something */ #define MOD_EXIPC_SET_MUTEX_PERMS /* XXX Apache should define something */
#endif #endif

View File

@@ -3053,7 +3053,7 @@ static int include_fixup(request_rec *r)
r->handler = "default-handler"; r->handler = "default-handler";
} }
else else
#if defined(OS2) || defined(WIN32) || defined(NETWARE) #if defined(WIN32) || defined(NETWARE)
/* These OS's don't support xbithack. This is being worked on. */ /* These OS's don't support xbithack. This is being worked on. */
{ {
return DECLINED; return DECLINED;

View File

@@ -390,12 +390,7 @@ static apr_status_t run_cgi_child(apr_file_t **script_out,
#endif #endif
#ifdef DEBUG_CGI #ifdef DEBUG_CGI
#ifdef OS2
/* Under OS/2 need to use device con. */
FILE *dbg = fopen("con", "w");
#else
FILE *dbg = fopen("/dev/tty", "w"); FILE *dbg = fopen("/dev/tty", "w");
#endif
int i; int i;
#endif #endif

View File

@@ -1366,7 +1366,7 @@ static int cgid_handler(request_rec *r)
return log_scripterror(r, conf, HTTP_FORBIDDEN, 0, return log_scripterror(r, conf, HTTP_FORBIDDEN, 0,
"attempt to include NPH CGI script"); "attempt to include NPH CGI script");
#if defined(OS2) || defined(WIN32) #if defined(WIN32)
#error mod_cgid does not work on this platform. If you teach it to, look #error mod_cgid does not work on this platform. If you teach it to, look
#error at mod_cgi.c for required code in this path. #error at mod_cgi.c for required code in this path.
#else #else

View File

@@ -437,10 +437,8 @@ static int status_handler(request_rec *r)
count, kbcount); count, kbcount);
#ifdef HAVE_TIMES #ifdef HAVE_TIMES
/* Allow for OS/2 not having CPU stats */ ap_rprintf(r, "CPULoad: %g\n",
if (ts || tu || tcu || tcs) (tu + ts + tcu + tcs) / tick / up_time * 100.);
ap_rprintf(r, "CPULoad: %g\n",
(tu + ts + tcu + tcs) / tick / up_time * 100.);
#endif #endif
ap_rprintf(r, "Uptime: %ld\n", (long) (up_time)); ap_rprintf(r, "Uptime: %ld\n", (long) (up_time));
@@ -461,13 +459,11 @@ static int status_handler(request_rec *r)
ap_rputs("</dt>\n", r); ap_rputs("</dt>\n", r);
#ifdef HAVE_TIMES #ifdef HAVE_TIMES
/* Allow for OS/2 not having CPU stats */
ap_rprintf(r, "<dt>CPU Usage: u%g s%g cu%g cs%g", ap_rprintf(r, "<dt>CPU Usage: u%g s%g cu%g cs%g",
tu / tick, ts / tick, tcu / tick, tcs / tick); tu / tick, ts / tick, tcu / tick, tcs / tick);
if (ts || tu || tcu || tcs) ap_rprintf(r, " - %.3g%% CPU load</dt>\n",
ap_rprintf(r, " - %.3g%% CPU load</dt>\n", (tu + ts + tcu + tcs) / tick / up_time * 100.);
(tu + ts + tcu + tcs) / tick / up_time * 100.);
#endif #endif
if (up_time > 0) { if (up_time > 0) {

View File

@@ -3779,13 +3779,11 @@ static int apply_rewrite_cond(rewritecond_entry *p, rewrite_ctx *ctx)
break; break;
case CONDPAT_FILE_LINK: case CONDPAT_FILE_LINK:
#if !defined(OS2)
if ( apr_stat(&sb, input, APR_FINFO_MIN | APR_FINFO_LINK, if ( apr_stat(&sb, input, APR_FINFO_MIN | APR_FINFO_LINK,
r->pool) == APR_SUCCESS r->pool) == APR_SUCCESS
&& sb.filetype == APR_LNK) { && sb.filetype == APR_LNK) {
rc = 1; rc = 1;
} }
#endif
break; break;
case CONDPAT_FILE_DIR: case CONDPAT_FILE_DIR:

View File

@@ -64,7 +64,7 @@
#include "http_config.h" #include "http_config.h"
#include "http_request.h" #include "http_request.h"
#if !defined(WIN32) && !defined(OS2) && !defined(NETWARE) #if !defined(WIN32) && !defined(NETWARE)
#define HAVE_UNIX_SUEXEC #define HAVE_UNIX_SUEXEC
#endif #endif

View File

@@ -22,21 +22,6 @@ proxy_fdpass_objs="mod_proxy_fdpass.lo"
proxy_ajp_objs="mod_proxy_ajp.lo ajp_header.lo ajp_link.lo ajp_msg.lo ajp_utils.lo" proxy_ajp_objs="mod_proxy_ajp.lo ajp_header.lo ajp_link.lo ajp_msg.lo ajp_utils.lo"
proxy_balancer_objs="mod_proxy_balancer.lo" proxy_balancer_objs="mod_proxy_balancer.lo"
case "$host" in
*os2*)
# OS/2 DLLs must resolve all symbols at build time and
# these sub-modules need some from the main proxy module
proxy_connect_objs="$proxy_connect_objs mod_proxy.la"
proxy_ftp_objs="$proxy_ftp_objs mod_proxy.la"
proxy_http_objs="$proxy_http_objs mod_proxy.la"
proxy_fcgi_objs="$proxy_fcgi_objs mod_proxy.la"
proxy_scgi_objs="$proxy_scgi_objs mod_proxy.la"
proxy_fdpass_objs="$proxy_fdpass_objs mod_proxy.la"
proxy_ajp_objs="$proxy_ajp_objs mod_proxy.la"
proxy_balancer_objs="$proxy_balancer_objs mod_proxy.la"
;;
esac
APACHE_MODULE(proxy_connect, Apache proxy CONNECT module, $proxy_connect_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_connect, Apache proxy CONNECT module, $proxy_connect_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_ftp, Apache proxy FTP module, $proxy_ftp_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_ftp, Apache proxy FTP module, $proxy_ftp_objs, , $proxy_mods_enable)
APACHE_MODULE(proxy_http, Apache proxy HTTP module, $proxy_http_objs, , $proxy_mods_enable) APACHE_MODULE(proxy_http, Apache proxy HTTP module, $proxy_http_objs, , $proxy_mods_enable)

View File

@@ -1,10 +1,6 @@
AC_MSG_CHECKING(for target platform) AC_MSG_CHECKING(for target platform)
case $host in case $host in
*pc-os2-emx*)
OS="os2"
OS_DIR=$OS
;;
bs2000*) bs2000*)
OS="unix" OS="unix"
OS_DIR=$OS OS_DIR=$OS

View File

@@ -1,5 +0,0 @@
LTLIBRARY_NAME = libos.la
LTLIBRARY_SOURCES = util_os2.c
include $(top_srcdir)/build/ltlib.mk

View File

@@ -1,3 +0,0 @@
if test "$OS" = "os2" ; then
APR_ADDTO(CFLAGS, [-DOS2 -O2])
fi

View File

@@ -1,7 +0,0 @@
# Some rules for making a shared core dll on OS/2
os2core: httpd.dll $(CORE_IMPLIB)
$(LIBTOOL) --mode=link gcc -Zstack 512 $(LDFLAGS) $(EXTRA_LDFLAGS) -o httpd $(CORE_IMPLIB)
httpd.dll: $(PROGRAM_DEPENDENCIES) $(CORE_IMPLIB)
$(LINK) -Zdll $(EXTRA_LDFLAGS) -s -o $@ server/exports.lo modules.lo $(PROGRAM_DEPENDENCIES) $(AP_LIBS) server/ApacheCoreOS2.def

View File

@@ -1,19 +0,0 @@
LIBRARY httpd INITINSTANCE
DESCRIPTION "Apache Server Core"
DATA NONSHARED
EXPORTS
"main"
; One for mod_dav from socket library
"_swaps"
; And some more for mod_unique_id
"gethostname"
"gethostbyname"
"_swapl"
"h_errno"
"inet_ntoa"
; mod_proxy needs this one
"inet_addr"

View File

@@ -1,39 +0,0 @@
/* 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.
*/
/**
* @file os2/os.h
* @brief 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
*
* @defgroup APACHE_OS_OS2 os2
* @ingroup APACHE_OS
* @{
*/
#ifndef APACHE_OS_H
#define APACHE_OS_H
#define PLATFORM "OS/2"
/* going away shortly... */
#define HAVE_DRIVE_LETTERS
#define HAVE_UNC_PATHS
#define CASE_BLIND_FILESYSTEM
#endif /* ! APACHE_OS_H */
/** @} */

View File

@@ -1,39 +0,0 @@
/* 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.
*/
#define INCL_DOS
#define INCL_DOSERRORS
#include <os2.h>
#include "ap_config.h"
#include "httpd.h"
#include "http_log.h"
#include "os.h"
#include <sys/time.h>
#include <sys/signal.h>
#include <ctype.h>
#include <string.h>
#include "apr_strings.h"
AP_DECLARE(apr_status_t) ap_os_create_privileged_process(
const request_rec *r,
apr_proc_t *newproc, const char *progname,
const char * const *args,
const char * const *env,
apr_procattr_t *attr, apr_pool_t *p)
{
return apr_proc_create(newproc, progname, args, env, attr, p);
}

View File

@@ -1,6 +1,5 @@
CLEAN_TARGETS = gen_test_char test_char.h \ CLEAN_TARGETS = gen_test_char test_char.h httpd.exp export_files \
ApacheCoreOS2.def httpd.exp export_files \
exports.c export_vars.h exports.c export_vars.h
SUBDIRS = mpm SUBDIRS = mpm
@@ -70,12 +69,6 @@ exports.c: export_files
export_vars.h: export_files export_vars.h: export_files
$(AWK) -f $(top_srcdir)/build/make_var_export.awk `cat $?` > $@ $(AWK) -f $(top_srcdir)/build/make_var_export.awk `cat $?` > $@
# Rule to make def file for OS/2 core dll
ApacheCoreOS2.def: exports.c export_vars.h $(top_srcdir)/os/$(OS_DIR)/core_header.def
cat $(top_srcdir)/os/$(OS_DIR)/core_header.def > $@
$(CPP) $< $(ALL_CPPFLAGS) $(ALL_INCLUDES) | grep "ap_hack_" | sed -e 's/^.*[)]\(.*\);$$/ "\1"/' >> $@
$(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.h | grep "^[a-z]" | sed -e 's/^\(.*\)$$/ "\1"/' >> $@
# Rule to make exp file for AIX DSOs # Rule to make exp file for AIX DSOs
httpd.exp: exports.c export_vars.h httpd.exp: exports.c export_vars.h
@echo "#! ." > $@ @echo "#! ." > $@

View File

@@ -1723,8 +1723,8 @@ AP_CORE_DECLARE_NONSTD(const char *) ap_limit_section(cmd_parms *cmd,
return errmsg; return errmsg;
} }
/* XXX: Bogus - need to do this differently (at least OS2/Netware suffer /* XXX: Bogus - need to do this differently (at least Netware suffers
* the same problem!!! * the same problem!!!)
* We use this in <DirectoryMatch> and <FilesMatch>, to ensure that * We use this in <DirectoryMatch> and <FilesMatch>, to ensure that
* people don't get bitten by wrong-cased regex matches * people don't get bitten by wrong-cased regex matches
*/ */

View File

@@ -62,14 +62,14 @@ int main(int argc, char *argv[])
printf("\n "); printf("\n ");
/* escape_shell_cmd */ /* escape_shell_cmd */
#if defined(WIN32) || defined(OS2) #if defined(WIN32)
/* Win32/OS2 have many of the same vulnerable characters /* Win32 has many of the same vulnerable characters
* as Unix sh, plus the carriage return and percent char. * as Unix sh, plus the carriage return and percent char.
* The proper escaping of these characters varies from unix * The proper escaping of these characters varies from unix
* since Win32/OS2 use carets or doubled-double quotes, * since Win32 uses carets or doubled-double quotes,
* and neither lf nor cr can be escaped. We escape unix * and neither lf nor cr can be escaped. We escape unix
* specific as well, to assure that cross-compiled unix * specific as well, to assure that cross-compiled unix
* applications behave similiarly when invoked on win32/os2. * applications behave similiarly when invoked on win32.
* *
* Rem please keep in-sync with apr's list in win32/filesys.c * Rem please keep in-sync with apr's list in win32/filesys.c
*/ */

View File

@@ -198,7 +198,7 @@ AP_DECLARE(gid_t) ap_gname2id(const char *name)
#ifndef HAVE_INITGROUPS #ifndef HAVE_INITGROUPS
int initgroups(const char *name, gid_t basegid) int initgroups(const char *name, gid_t basegid)
{ {
#if defined(QNX) || defined(MPE) || defined(_OSD_POSIX) || defined(TPF) || defined(__TANDEM) || defined(OS2) || defined(WIN32) || defined(NETWARE) #if defined(QNX) || defined(MPE) || defined(_OSD_POSIX) || defined(TPF) || defined(__TANDEM) || defined(WIN32) || defined(NETWARE)
/* QNX and MPE do not appear to support supplementary groups. */ /* QNX and MPE do not appear to support supplementary groups. */
return 0; return 0;
#else /* ndef QNX */ #else /* ndef QNX */

View File

@@ -529,8 +529,8 @@ AP_CORE_DECLARE(void) ap_parse_uri(request_rec *r, const char *uri)
r->uri = r->parsed_uri.path ? r->parsed_uri.path r->uri = r->parsed_uri.path ? r->parsed_uri.path
: apr_pstrdup(r->pool, "/"); : apr_pstrdup(r->pool, "/");
#if defined(OS2) || defined(WIN32) #if defined(WIN32)
/* Handle path translations for OS/2 and plug security hole. /* Handle path translations and plug security hole.
* This will prevent "http://www.wherever.com/..\..\/" from * This will prevent "http://www.wherever.com/..\..\/" from
* returning a directory for the root drive. * returning a directory for the root drive.
*/ */
@@ -540,7 +540,7 @@ AP_CORE_DECLARE(void) ap_parse_uri(request_rec *r, const char *uri)
for (x = r->uri; (x = strchr(x, '\\')) != NULL; ) for (x = r->uri; (x = strchr(x, '\\')) != NULL; )
*x = '/'; *x = '/';
} }
#endif /* OS2 || WIN32 */ #endif /* WIN32 */
} }
else { else {
r->args = NULL; r->args = NULL;

View File

@@ -822,7 +822,7 @@ AP_DECLARE(int) ap_directory_walk(request_rec *r)
/* We will never skip '0' element components, e.g. plain old /* We will never skip '0' element components, e.g. plain old
* <Directory >, and <Directory "/"> are classified as zero * <Directory >, and <Directory "/"> are classified as zero
* so that Win32/Netware/OS2 etc all pick them up. * so that Win32/Netware etc all pick them up.
* Otherwise, skip over the mismatches. * Otherwise, skip over the mismatches.
*/ */
if (entry_core->d_components if (entry_core->d_components

View File

@@ -71,7 +71,7 @@
*/ */
#define TEST_CHAR(c, f) (test_char_table[(unsigned)(c)] & (f)) #define TEST_CHAR(c, f) (test_char_table[(unsigned)(c)] & (f))
/* Win32/NetWare/OS2 need to check for both forward and back slashes /* Win32/NetWare need to check for both forward and back slashes
* in ap_getparents() and ap_escape_url. * in ap_getparents() and ap_escape_url.
*/ */
#ifdef CASE_BLIND_FILESYSTEM #ifdef CASE_BLIND_FILESYSTEM
@@ -910,11 +910,11 @@ AP_DECLARE(apr_status_t) ap_pcfg_openfile(ap_configfile_t **ret_cfg,
return status; return status;
if (finfo.filetype != APR_REG && if (finfo.filetype != APR_REG &&
#if defined(WIN32) || defined(OS2) || defined(NETWARE) #if defined(WIN32) || defined(NETWARE)
strcasecmp(apr_filepath_name_get(name), "nul") != 0) { strcasecmp(apr_filepath_name_get(name), "nul") != 0) {
#else #else
strcmp(name, "/dev/null") != 0) { strcmp(name, "/dev/null") != 0) {
#endif /* WIN32 || OS2 */ #endif /* WIN32 */
ap_log_error(APLOG_MARK, APLOG_ERR, 0, NULL, ap_log_error(APLOG_MARK, APLOG_ERR, 0, NULL,
"Access to file %s denied by server: not a regular file", "Access to file %s denied by server: not a regular file",
name); name);
@@ -1489,9 +1489,9 @@ AP_DECLARE(char *) ap_escape_shell_cmd(apr_pool_t *p, const char *str)
s = (const unsigned char *)str; s = (const unsigned char *)str;
for (; *s; ++s) { for (; *s; ++s) {
#if defined(OS2) || defined(WIN32) #if defined(WIN32)
/* /*
* Newlines to Win32/OS2 CreateProcess() are ill advised. * Newlines to Win32 CreateProcess() are ill advised.
* Convert them to spaces since they are effectively white * Convert them to spaces since they are effectively white
* space to most applications * space to most applications
*/ */

View File

@@ -37,11 +37,6 @@
#include "apr_date.h" /* For apr_date_parse_http() */ #include "apr_date.h" /* For apr_date_parse_http() */
#include "util_ebcdic.h" #include "util_ebcdic.h"
#ifdef OS2
#define INCL_DOS
#include <os2.h>
#endif
/* /*
* Various utility functions which are common to a whole lot of * Various utility functions which are common to a whole lot of
* script-type extensions mechanisms, and might as well be gathered * script-type extensions mechanisms, and might as well be gathered
@@ -122,7 +117,7 @@ AP_DECLARE(void) ap_add_common_vars(request_rec *r)
conn_rec *c = r->connection; conn_rec *c = r->connection;
const char *rem_logname; const char *rem_logname;
char *env_path; char *env_path;
#if defined(WIN32) || defined(OS2) #if defined(WIN32)
char *env_temp; char *env_temp;
#endif #endif
const char *host; const char *host;
@@ -200,21 +195,6 @@ AP_DECLARE(void) ap_add_common_vars(request_rec *r)
} }
#endif #endif
#ifdef OS2
if ((env_temp = getenv("COMSPEC")) != NULL) {
apr_table_addn(e, "COMSPEC", env_temp);
}
if ((env_temp = getenv("ETC")) != NULL) {
apr_table_addn(e, "ETC", env_temp);
}
if ((env_temp = getenv("DPATH")) != NULL) {
apr_table_addn(e, "DPATH", env_temp);
}
if ((env_temp = getenv("PERLLIB_PREFIX")) != NULL) {
apr_table_addn(e, "PERLLIB_PREFIX", env_temp);
}
#endif
apr_table_addn(e, "SERVER_SIGNATURE", ap_psignature("", r)); apr_table_addn(e, "SERVER_SIGNATURE", ap_psignature("", r));
apr_table_addn(e, "SERVER_SOFTWARE", ap_get_server_banner()); apr_table_addn(e, "SERVER_SOFTWARE", ap_get_server_banner());
apr_table_addn(e, "SERVER_NAME", apr_table_addn(e, "SERVER_NAME",

View File

@@ -490,7 +490,7 @@ if ($opt_i or $opt_e) {
my @cmds = (); my @cmds = ();
my $f; my $f;
foreach $f (@args) { foreach $f (@args) {
# ack all potential gcc, hp/ux, win32+os2+aix and os/x extensions # ack all potential gcc, hp/ux, win32, aix and os/x extensions
if ($f !~ m#(\.so$|\.la$|\.sl$|\.dll$|\.dylib$|)#) { if ($f !~ m#(\.so$|\.la$|\.sl$|\.dll$|\.dylib$|)#) {
error("file $f is not a shared object"); error("file $f is not a shared object");
exit(1); exit(1);

View File

@@ -148,7 +148,7 @@ int main(int argc, const char * const argv[])
exit_error(rv, "apr_proc_detach"); exit_error(rv, "apr_proc_detach");
} }
#if defined(WIN32) || defined(OS2) || defined(NETWARE) #if defined(WIN32) || defined(NETWARE)
#error "Please implement me." #error "Please implement me."

View File

@@ -118,17 +118,11 @@ static void usage(const char *argv0, const char *reason)
"{<rotation time in seconds>|<rotation size>(B|K|M|G)} " "{<rotation time in seconds>|<rotation size>(B|K|M|G)} "
"[offset minutes from UTC]\n\n", "[offset minutes from UTC]\n\n",
argv0); argv0);
#ifdef OS2
fprintf(stderr,
"Add this:\n\nTransferLog \"|%s.exe /some/where 86400\"\n\n",
argv0);
#else
fprintf(stderr, fprintf(stderr,
"Add this:\n\nTransferLog \"|%s /some/where 86400\"\n\n", "Add this:\n\nTransferLog \"|%s /some/where 86400\"\n\n",
argv0); argv0);
fprintf(stderr, fprintf(stderr,
"or \n\nTransferLog \"|%s /some/where 5M\"\n\n", argv0); "or \n\nTransferLog \"|%s /some/where 5M\"\n\n", argv0);
#endif
fprintf(stderr, fprintf(stderr,
"to httpd.conf. The generated name will be /some/where.nnnn " "to httpd.conf. The generated name will be /some/where.nnnn "
"where nnnn is the\nsystem time at which the log nominally " "where nnnn is the\nsystem time at which the log nominally "