From 2f9b9fdd7099d9293824f82f7b4c987b6fd0ef6d Mon Sep 17 00:00:00 2001 From: Jeff Trawick Date: Thu, 26 Mar 2009 22:23:44 +0000 Subject: [PATCH] remove BeOS OS support git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@758891 13f79535-47bb-0310-9956-ffa450edef68 --- LAYOUT | 2 - config.layout | 24 ---- configure.in | 8 -- docs/manual/misc/password_encryptions.xml | 2 +- include/httpd.h | 3 - modules/examples/mod_example_ipc.c | 2 +- modules/mappers/mod_userdir.c | 2 +- modules/proxy/mod_proxy_ftp.c | 4 +- modules/proxy/proxy_util.c | 4 +- os/beos/Makefile.in | 5 - os/beos/beosd.c | 166 ---------------------- os/beos/beosd.h | 68 --------- os/beos/config.m4 | 3 - os/beos/os.c | 37 ----- os/beos/os.h | 42 ------ os/config.m4 | 4 - server/mpm_common.c | 4 +- server/mpm_unix.c | 10 -- server/util_script.c | 8 +- 19 files changed, 10 insertions(+), 388 deletions(-) delete mode 100644 os/beos/Makefile.in delete mode 100644 os/beos/beosd.c delete mode 100644 os/beos/beosd.h delete mode 100644 os/beos/config.m4 delete mode 100644 os/beos/os.c delete mode 100644 os/beos/os.h diff --git a/LAYOUT b/LAYOUT index bcba575dda..f09318cb14 100644 --- a/LAYOUT +++ b/LAYOUT @@ -139,8 +139,6 @@ modules/ ................ Manditory and Add-In Apache stock modules os/ ..................... - beos/ ................... - bs2000/ ................. netware/ ................ diff --git a/config.layout b/config.layout index 03cb8f5930..ca4f746fe0 100644 --- a/config.layout +++ b/config.layout @@ -154,30 +154,6 @@ proxycachedir: ${localstatedir}/proxy -# BeOS layout... - - prefix: /boot/home/apache - exec_prefix: ${prefix} - bindir: ${exec_prefix}/bin - sbindir: ${exec_prefix}/bin - libdir: ${exec_prefix}/lib - libexecdir: ${exec_prefix}/libexec - mandir: ${prefix}/man - sysconfdir: ${prefix}/conf - datadir: ${prefix} - installbuilddir: ${datadir}/build - errordir: ${datadir}/error - iconsdir: ${datadir}/icons - htdocsdir: ${datadir}/htdocs - manualdir: ${datadir}/manual - cgidir: ${datadir}/cgi-bin - includedir: ${prefix}/include - localstatedir: ${prefix} - runtimedir: ${localstatedir}/logs - logfiledir: ${localstatedir}/logs - proxycachedir: ${localstatedir}/proxy - - # SuSE 6.x layout prefix: /usr diff --git a/configure.in b/configure.in index 5d227352fb..f0f1b5b650 100644 --- a/configure.in +++ b/configure.in @@ -273,9 +273,6 @@ case $host in APR_SETVAR(APACHE_MPM, [prefork]) APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1]) ;; - *-beos*) - APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1]) - ;; *os2-emx*) APR_SETVAR(APACHE_MPM, [mpmt_os2]) APR_SETVAR(SINGLE_LISTEN_UNSERIALIZED_ACCEPT, [1]) @@ -591,11 +588,6 @@ if test "$enable_so" = "yes"; then APR_ADDTO(SH_LDFLAGS, [\$(EXTRA_LDFLAGS) \$(EXTRA_LIBS)]) APR_ADDTO(UTIL_LDFLAGS, [-Wl,-uXML_Parse]) ;; - *beos) - SH_LDFLAGS='$(top_builddir)/_APP_' - PRE_SHARED_CMDS='ln -s $(top_builddir)/httpd $(top_builddir)/_APP_' - POST_SHARED_CMDS='rm $(top_builddir)/_APP_' - ;; *os390) APR_ADDTO(HTTPD_LDFLAGS, [--main=$abs_srcdir/server/main.o --core-dll=$abs_srcdir/apachecore.dll]) APR_ADDTO(SH_LDFLAGS, [--core-dll=$abs_srcdir/apachecore.dll]) diff --git a/docs/manual/misc/password_encryptions.xml b/docs/manual/misc/password_encryptions.xml index 835ca39294..62db658fb8 100644 --- a/docs/manual/misc/password_encryptions.xml +++ b/docs/manual/misc/password_encryptions.xml @@ -37,7 +37,7 @@
PLAIN TEXT (i.e. unencrypted)
-
Windows, BEOS, & Netware only.
+
Windows & Netware only.
CRYPT
Unix only. Uses the traditional Unix crypt(3) function diff --git a/include/httpd.h b/include/httpd.h index 5156707323..c189eceb80 100644 --- a/include/httpd.h +++ b/include/httpd.h @@ -81,9 +81,6 @@ extern "C" { #elif defined(WIN32) /** Set default for Windows file system */ #define HTTPD_ROOT "/apache" -#elif defined (BEOS) -/** Set the default for BeOS */ -#define HTTPD_ROOT "/boot/home/apache" #elif defined (NETWARE) /** Set the default for NetWare */ #define HTTPD_ROOT "/apache" diff --git a/modules/examples/mod_example_ipc.c b/modules/examples/mod_example_ipc.c index cf5353f6fc..ea1d3830c0 100644 --- a/modules/examples/mod_example_ipc.c +++ b/modules/examples/mod_example_ipc.c @@ -54,7 +54,7 @@ #include "http_protocol.h" #include "ap_config.h" -#if !defined(OS2) && !defined(WIN32) && !defined(BEOS) && !defined(NETWARE) +#if !defined(OS2) && !defined(WIN32) && !defined(NETWARE) #include "unixd.h" #define MOD_EXIPC_SET_MUTEX_PERMS /* XXX Apache should define something */ #endif diff --git a/modules/mappers/mod_userdir.c b/modules/mappers/mod_userdir.c index 2270757d00..f6e3e5dc5f 100644 --- a/modules/mappers/mod_userdir.c +++ b/modules/mappers/mod_userdir.c @@ -64,7 +64,7 @@ #include "http_config.h" #include "http_request.h" -#if !defined(WIN32) && !defined(OS2) && !defined(BEOS) && !defined(NETWARE) +#if !defined(WIN32) && !defined(OS2) && !defined(NETWARE) #define HAVE_UNIX_SUEXEC #endif diff --git a/modules/proxy/mod_proxy_ftp.c b/modules/proxy/mod_proxy_ftp.c index e0c1c07914..e73ca25547 100644 --- a/modules/proxy/mod_proxy_ftp.c +++ b/modules/proxy/mod_proxy_ftp.c @@ -1323,7 +1323,7 @@ static int proxy_ftp_handler(request_rec *r, proxy_worker *worker, return HTTP_INTERNAL_SERVER_ERROR; } -#if !defined (TPF) && !defined(BEOS) +#if !defined (TPF) if (conf->recv_buffer_size > 0 && (rv = apr_socket_opt_set(data_sock, APR_SO_RCVBUF, conf->recv_buffer_size))) { @@ -1417,7 +1417,7 @@ static int proxy_ftp_handler(request_rec *r, proxy_worker *worker, return HTTP_INTERNAL_SERVER_ERROR; } -#if !defined (TPF) && !defined(BEOS) +#if !defined (TPF) if (conf->recv_buffer_size > 0 && (rv = apr_socket_opt_set(data_sock, APR_SO_RCVBUF, conf->recv_buffer_size))) { diff --git a/modules/proxy/proxy_util.c b/modules/proxy/proxy_util.c index f32c9b731f..2752518038 100644 --- a/modules/proxy/proxy_util.c +++ b/modules/proxy/proxy_util.c @@ -1578,7 +1578,7 @@ PROXY_DECLARE(int) ap_proxy_connect_to_backend(apr_socket_t **newsock, continue; } -#if !defined(TPF) && !defined(BEOS) +#if !defined(TPF) if (conf->recv_buffer_size > 0 && (rv = apr_socket_opt_set(*newsock, APR_SO_RCVBUF, conf->recv_buffer_size))) { @@ -2262,7 +2262,7 @@ PROXY_DECLARE(int) ap_proxy_connect_backend(const char *proxy_function, } conn->connection = NULL; -#if !defined(TPF) && !defined(BEOS) +#if !defined(TPF) if (worker->recv_buffer_size > 0 && (rv = apr_socket_opt_set(newsock, APR_SO_RCVBUF, worker->recv_buffer_size))) { diff --git a/os/beos/Makefile.in b/os/beos/Makefile.in deleted file mode 100644 index 66272ecc46..0000000000 --- a/os/beos/Makefile.in +++ /dev/null @@ -1,5 +0,0 @@ - -LTLIBRARY_NAME = libos.la -LTLIBRARY_SOURCES = os.c beosd.c - -include $(top_srcdir)/build/ltlib.mk diff --git a/os/beos/beosd.c b/os/beos/beosd.c deleted file mode 100644 index 8be35c0505..0000000000 --- a/os/beos/beosd.c +++ /dev/null @@ -1,166 +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. - */ - -#include -#include "httpd.h" -#include "http_config.h" -#include "http_main.h" -#include "http_log.h" -#include "beosd.h" -#include "mpm_common.h" - -beosd_config_rec beosd_config; - -/* Set group privileges. - * - * Note that until we get the multi-user situation sorted on beos, - * this is just a no-op to allow common configuration files! - */ - -#if B_BEOS_VERSION < 0x0460 -static int set_group_privs(void) -{ - /* no-op */ - return 0; -} -#endif - - -int beosd_setup_child(void) -{ - /* TODO: revisit the whole issue of users/groups for BeOS as - * R5 and below doesn't really have much concept of them. - */ - - return 0; -} - - -AP_DECLARE(const char *) beosd_set_user(cmd_parms *cmd, - void *dummy, const char *arg) -{ - /* no-op */ - return NULL; -} - -AP_DECLARE(const char *) beosd_set_group(cmd_parms *cmd, - void *dummy, const char *arg) -{ - /* no-op */ - return NULL; -} - -void beosd_pre_config(void) -{ - /* Until the multi-user situation on BeOS is fixed, - simply have a no-op here to allow for common conf files - */ -} - -AP_DECLARE(apr_status_t) beosd_accept(void **accepted, ap_listen_rec *lr, - apr_pool_t *ptrans) -{ - apr_socket_t *csd; - apr_status_t status; - int sockdes; - - status = apr_socket_accept(&csd, lr->sd, ptrans); - if (status == APR_SUCCESS) { - *accepted = csd; - apr_os_sock_get(&sockdes, csd); - if (sockdes >= FD_SETSIZE) { - ap_log_error(APLOG_MARK, APLOG_WARNING, 0, NULL, - "new file descriptor %d is too large; you probably need " - "to rebuild Apache with a larger FD_SETSIZE " - "(currently %d)", - sockdes, FD_SETSIZE); - apr_socket_close(csd); - return APR_EINTR; - } - return status; - } - - if (APR_STATUS_IS_EINTR(status)) { - return status; - } - /* Our old behaviour here was to continue after accept() - * errors. But this leads us into lots of troubles - * because most of the errors are quite fatal. For - * example, EMFILE can be caused by slow descriptor - * leaks (say in a 3rd party module, or libc). It's - * foolish for us to continue after an EMFILE. We also - * seem to tickle kernel bugs on some platforms which - * lead to never-ending loops here. So it seems best - * to just exit in most cases. - */ - switch (status) { -#ifdef EPROTO - /* EPROTO on certain older kernels really means - * ECONNABORTED, so we need to ignore it for them. - * See discussion in new-httpd archives nh.9701 - * search for EPROTO. - * - * Also see nh.9603, search for EPROTO: - * There is potentially a bug in Solaris 2.x x<6, - * and other boxes that implement tcp sockets in - * userland (i.e. on top of STREAMS). On these - * systems, EPROTO can actually result in a fatal - * loop. See PR#981 for example. It's hard to - * handle both uses of EPROTO. - */ - case EPROTO: -#endif -#ifdef ECONNABORTED - case ECONNABORTED: -#endif -#ifdef ETIMEDOUT - case ETIMEDOUT: -#endif -#ifdef EHOSTUNREACH - case EHOSTUNREACH: -#endif -#ifdef ENETUNREACH - case ENETUNREACH: -#endif - break; -#ifdef ENETDOWN - case ENETDOWN: - /* - * When the network layer has been shut down, there - * is not much use in simply exiting: the parent - * would simply re-create us (and we'd fail again). - * Use the CHILDFATAL code to tear the server down. - * @@@ Martin's idea for possible improvement: - * A different approach would be to define - * a new APEXIT_NETDOWN exit code, the reception - * of which would make the parent shutdown all - * children, then idle-loop until it detected that - * the network is up again, and restart the children. - * Ben Hyde noted that temporary ENETDOWN situations - * occur in mobile IP. - */ - ap_log_error(APLOG_MARK, APLOG_EMERG, status, ap_server_conf, - "apr_socket_accept: giving up."); - return APR_EGENERAL; -#endif /*ENETDOWN*/ - - default: - ap_log_error(APLOG_MARK, APLOG_ERR, status, ap_server_conf, - "apr_socket_accept: (client socket)"); - return APR_EGENERAL; - } - return status; -} diff --git a/os/beos/beosd.h b/os/beos/beosd.h deleted file mode 100644 index 7c75e0a282..0000000000 --- a/os/beos/beosd.h +++ /dev/null @@ -1,68 +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 beosd.h - * @brief common stuff that beos MPMs will want - * - * @addtogroup APACHE_OS_BEOS - * @{ - */ - -#ifndef BEOSD_H -#define BEOSD_H - -#include "httpd.h" -#include "ap_listen.h" - -/* Default user name and group name. These may be specified as numbers by - * placing a # before a number */ - -#ifndef DEFAULT_USER -#define DEFAULT_USER "#-1" -#endif -#ifndef DEFAULT_GROUP -#define DEFAULT_GROUP "#" -#endif - -typedef struct { - char *user_name; - uid_t user_id; - gid_t group_id; -} beosd_config_rec; -extern beosd_config_rec beosd_config; - -void beosd_detach(void); -int beosd_setup_child(void); -void beosd_pre_config(void); -AP_DECLARE(const char *) beosd_set_user (cmd_parms *cmd, void *dummy, - const char *arg); -AP_DECLARE(const char *) beosd_set_group(cmd_parms *cmd, void *dummy, - const char *arg); -AP_DECLARE(apr_status_t) beosd_accept(void **accepted, ap_listen_rec *lr, - apr_pool_t *ptrans); - -#define beosd_killpg(x, y) (kill (-(x), (y))) -#define ap_os_killpg(x, y) (kill (-(x), (y))) - -#define BEOS_DAEMON_COMMANDS \ -AP_INIT_TAKE1("User", beosd_set_user, NULL, RSRC_CONF, \ - "Effective user id for this server (NO-OP)"), \ -AP_INIT_TAKE1("Group", beosd_set_group, NULL, RSRC_CONF, \ - "Effective group id for this server (NO-OP)") - -#endif /* BEOSD_H */ -/** @} */ diff --git a/os/beos/config.m4 b/os/beos/config.m4 deleted file mode 100644 index 4fe95b7509..0000000000 --- a/os/beos/config.m4 +++ /dev/null @@ -1,3 +0,0 @@ -if test "$OS" = "beos" ; then - APR_ADDTO(CFLAGS,-DBEOS) -fi diff --git a/os/beos/os.c b/os/beos/os.c deleted file mode 100644 index 5c535d6e55..0000000000 --- a/os/beos/os.c +++ /dev/null @@ -1,37 +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. - */ - -/* - * This file will include OS specific functions which are not inlineable. - * Any inlineable functions should be defined in os-inline.c instead. - */ - -#include "ap_config.h" -#include "os.h" -#include "httpd.h" -#include "apr_thread_proc.h" -#include "ap_mpm.h" /* needed for definition of - * ap_os_create_privileged_process */ - -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); -} diff --git a/os/beos/os.h b/os/beos/os.h deleted file mode 100644 index e1b0a63d24..0000000000 --- a/os/beos/os.h +++ /dev/null @@ -1,42 +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 beos/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_BEOS beos - * @ingroup APACHE_OS - * @{ - */ - -#ifndef APACHE_OS_H -#define APACHE_OS_H - -#include "ap_config.h" - -#ifndef PLATFORM -# ifdef BONE_VERSION -# define PLATFORM "BeOS BONE" -# else -# define PLATFORM "BeOS R5" -# endif -#endif - -#endif /* !APACHE_OS_H */ -/** @} */ diff --git a/os/config.m4 b/os/config.m4 index b5ab86bd5b..31880911b0 100644 --- a/os/config.m4 +++ b/os/config.m4 @@ -1,10 +1,6 @@ AC_MSG_CHECKING(for target platform) case $host in -*beos*) - OS="beos" - OS_DIR=$OS - ;; *pc-os2-emx*) OS="os2" OS_DIR=$OS diff --git a/server/mpm_common.c b/server/mpm_common.c index 0f80370ae8..751676e0a0 100644 --- a/server/mpm_common.c +++ b/server/mpm_common.c @@ -198,8 +198,8 @@ AP_DECLARE(gid_t) ap_gname2id(const char *name) #ifndef HAVE_INITGROUPS int initgroups(const char *name, gid_t basegid) { -#if defined(QNX) || defined(MPE) || defined(BEOS) || defined(_OSD_POSIX) || defined(TPF) || defined(__TANDEM) || defined(OS2) || defined(WIN32) || defined(NETWARE) -/* QNX, MPE and BeOS do not appear to support supplementary groups. */ +#if defined(QNX) || defined(MPE) || defined(_OSD_POSIX) || defined(TPF) || defined(__TANDEM) || defined(OS2) || defined(WIN32) || defined(NETWARE) +/* QNX and MPE do not appear to support supplementary groups. */ return 0; #else /* ndef QNX */ gid_t groups[NGROUPS_MAX]; diff --git a/server/mpm_unix.c b/server/mpm_unix.c index eadfa33aa3..b38df4ceee 100644 --- a/server/mpm_unix.c +++ b/server/mpm_unix.c @@ -141,17 +141,7 @@ static int reclaim_one_pid(pid_t pid, action_t action) " still did not exit, " "sending a SIGKILL", pid); -#ifndef BEOS kill(pid, SIGKILL); -#else - /* sending a SIGKILL kills the entire team on BeOS, and as - * httpd thread is part of that team it removes any chance - * of ever doing a restart. To counter this I'm changing to - * use a kinder, gentler way of killing a specific thread - * that is just as effective. - */ - kill_thread(pid); -#endif break; case GIVEUP: diff --git a/server/util_script.c b/server/util_script.c index fe14d0d952..707c1b53df 100644 --- a/server/util_script.c +++ b/server/util_script.c @@ -122,7 +122,7 @@ AP_DECLARE(void) ap_add_common_vars(request_rec *r) conn_rec *c = r->connection; const char *rem_logname; char *env_path; -#if defined(WIN32) || defined(OS2) || defined(BEOS) +#if defined(WIN32) || defined(OS2) char *env_temp; #endif const char *host; @@ -215,12 +215,6 @@ AP_DECLARE(void) ap_add_common_vars(request_rec *r) } #endif -#ifdef BEOS - if ((env_temp = getenv("LIBRARY_PATH")) != NULL) { - apr_table_addn(e, "LIBRARY_PATH", env_temp); - } -#endif - apr_table_addn(e, "SERVER_SIGNATURE", ap_psignature("", r)); apr_table_addn(e, "SERVER_SOFTWARE", ap_get_server_banner()); apr_table_addn(e, "SERVER_NAME", -- 2.40.0