akosut 97/08/27 18:37:03
Modified: src Configure
src/main conf.h http_main.c util.c
Log:
Add initial (not-quite-tested) support for the BeOS.
Revision Changes Path
1.144 +5 -0 apachen/src/Configure
Index: Configure
===================================================================
RCS file: /export/home/cvs/apachen/src/Configure,v
retrieving revision 1.143
retrieving revision 1.144
diff -u -u -r1.143 -r1.144
--- Configure 1997/08/27 01:12:19 1.143
+++ Configure 1997/08/28 01:36:57 1.144
@@ -480,6 +480,11 @@
MAKE="make"
DEF_WANTHSREGEX=yes
;;
+ *-BeOS*)
+ OS='BeOS';
+ CFLAGS="$CFLAGS -DBEOS"
+ DEF_WANTHSREGEX=yes
+ ;;
*) # default: Catch systems we don't know about
echo Sorry, but we cannot grok \"$PLAT\"
echo uname -m
1.130 +16 -2 apachen/src/main/conf.h
Index: conf.h
===================================================================
RCS file: /export/home/cvs/apachen/src/main/conf.h,v
retrieving revision 1.129
retrieving revision 1.130
diff -u -u -r1.129 -r1.130
--- conf.h 1997/08/27 14:22:06 1.129
+++ conf.h 1997/08/28 01:36:59 1.130
@@ -605,6 +605,20 @@
#define NEED_STRNCASECMP
#define NEED_STRDUP
+#elif defined(BEOS)
+#include <stddef.h>
+
+#define JMP_BUF sigjmp_buf
+#define NO_WRITEV
+#define NO_KILLPG
+#define NEED_INITGROUPS
+
+/* BeOS doesn't have a couple signals... redefine to close ones*/
+#define SIGBUS SIGSEGV
+#define SIGURG SIGPIPE
+
+#define isascii(c) (!((c) & ~0177))
+
#elif defined(WIN32)
/* Put your NT stuff here - Ambarish */
@@ -756,9 +770,9 @@
#include <netinet/in.h>
#include <netdb.h>
#include <sys/ioctl.h>
-#ifndef MPE
+#if !defined(MPE) && !defined(BEOS)
#include <arpa/inet.h> /* for inet_ntoa */
-#endif /* ndef MPE */
+#endif
#include <sys/wait.h>
#include <pwd.h>
#include <grp.h>
1.212 +7 -2 apachen/src/main/http_main.c
Index: http_main.c
===================================================================
RCS file: /export/home/cvs/apachen/src/main/http_main.c,v
retrieving revision 1.211
retrieving revision 1.212
diff -u -u -r1.211 -r1.212
--- http_main.c 1997/08/28 00:56:41 1.211
+++ http_main.c 1997/08/28 01:36:59 1.212
@@ -98,7 +98,7 @@
#endif
#ifdef WIN32
#include "../os/win32/getopt.h"
-#else
+#elif !defined(BEOS)
#include <netinet/tcp.h>
#endif
@@ -1947,7 +1947,7 @@
name = ent->pw_name;
} else name = user_name;
-#ifndef __EMX__
+#ifndef __EMX__
/* OS/2 dosen't support groups. */
/* Reset `groups' attributes. */
@@ -2307,11 +2307,14 @@
exit(1);
}
one = 1;
+#ifndef BEOS
+/* BeOS does not support SO_KEEPALIVE */
if (setsockopt(s, SOL_SOCKET,SO_KEEPALIVE,(char *)&one,sizeof(int)) < 0)
{
log_unixerr("setsockopt", "(SO_KEEPALIVE)", NULL, server_conf);
exit(1);
}
#endif
+#endif
sock_disable_nagle(s);
sock_enable_linger(s);
@@ -2335,6 +2338,7 @@
*
* If no size is specified, use the kernel default.
*/
+#ifndef BEOS /* BeOS does not support SO_SNDBUF */
if (server_conf->send_buffer_size) {
if (setsockopt(s, SOL_SOCKET, SO_SNDBUF,
(char *)&server_conf->send_buffer_size, sizeof(int)) < 0) {
@@ -2344,6 +2348,7 @@
/* not a fatal error */
}
}
+#endif
#ifdef MPE
/* MPE requires CAP=PM and GETPRIVMODE to bind to ports less than 1024 */
1.68 +2 -2 apachen/src/main/util.c
Index: util.c
===================================================================
RCS file: /export/home/cvs/apachen/src/main/util.c,v
retrieving revision 1.67
retrieving revision 1.68
diff -u -u -r1.67 -r1.68
--- util.c 1997/07/27 03:13:31 1.67
+++ util.c 1997/08/28 01:37:00 1.68
@@ -1079,8 +1079,8 @@
#ifdef NEED_INITGROUPS
int initgroups(const char *name, gid_t basegid)
{
-#if defined(QNX) || defined(MPE)
-/* QNX and MPE do not appear to support supplementary groups. */
+#if defined(QNX) || defined(MPE) || defined(BEOS)
+/* QNX, MPE and BeOS do not appear to support supplementary groups. */
return 0;
#else /* ndef QNX */
gid_t groups[NGROUPS_MAX];