fielding 97/08/15 11:12:13
Modified: src CHANGES Configure
src/core conf.h http_main.c
Log:
Improved support for ConvexOS 11.
Submitted by: Jeff Venters <[EMAIL PROTECTED]>
Reviewed by: Roy Fielding, Ralf S. Engelschall
Revision Changes Path
1.397 +2 -0 apachen/src/CHANGES
Index: CHANGES
===================================================================
RCS file: /export/home/cvs/apachen/src/CHANGES,v
retrieving revision 1.396
retrieving revision 1.397
diff -u -r1.396 -r1.397
--- CHANGES 1997/08/15 17:59:47 1.396
+++ CHANGES 1997/08/15 18:12:04 1.397
@@ -422,6 +422,8 @@
*) Force proxy to always respond as HTTP/1.0, which it was failing to
do for errors and cached responses. [Roy Fielding]
+ *) PORT: Improved support for ConvexOS 11. [Jeff Venters]
+
Changes with Apache 1.2.2 [not released]
*) Fixed another long-standing bug in sub_req_lookup_file where it would
1.134 +2 -1 apachen/src/Configure
Index: Configure
===================================================================
RCS file: /export/home/cvs/apachen/src/Configure,v
retrieving revision 1.133
retrieving revision 1.134
diff -u -r1.133 -r1.134
--- Configure 1997/08/13 09:28:44 1.133
+++ Configure 1997/08/15 18:12:06 1.134
@@ -448,7 +448,8 @@
;;
*convex-v11*)
OS='CONVEXOS11'
- CFLAGS="$CFLAGS -DCONVEXOS11"
+ CFLAGS="$CFLAGS -ext -DCONVEXOS11"
+ OPTIM="-O1" # scalar optimization only
CC='cc'
DEF_WANTHSREGEX=yes
;;
1.123 +7 -5 apachen/src/core/conf.h
Index: conf.h
===================================================================
RCS file: /export/home/cvs/apachen/src/core/conf.h,v
retrieving revision 1.122
retrieving revision 1.123
diff -u -r1.122 -r1.123
--- conf.h 1997/08/07 09:39:48 1.122
+++ conf.h 1997/08/15 18:12:09 1.123
@@ -306,10 +306,6 @@
extern int strcasecmp(const char *,const char *);
extern int strncasecmp(const char *,const char *,unsigned);
-#elif defined(CONVEXOS)
-#define HAVE_GMTOFF
-#define NEED_STRDUP
-
#elif defined(AUX)
/* These are to let -Wall compile more cleanly */
extern int strcasecmp(const char *, const char *);
@@ -505,6 +501,12 @@
/* Convex OS v11 */
#elif defined(CONVEXOS11)
+#undef HAVE_GMTOFF
+#undef NO_KILLPG
+#undef NO_SETSID
+#undef NEED_STRDUP
+#define HAVE_MMAP
+
#define NO_TIMEZONE
#include <stdio.h>
#include <sys/types.h>
@@ -659,7 +661,7 @@
va_list ap);
#endif
-#if !defined(NEXT) && !defined(CONVEXOS) && !defined(WIN32)
+#if !defined(NEXT) && !defined(WIN32)
#include <dirent.h>
#define DIR_TYPE dirent
#elif !defined(WIN32)
1.200 +19 -0 apachen/src/core/http_main.c
Index: http_main.c
===================================================================
RCS file: /export/home/cvs/apachen/src/core/http_main.c,v
retrieving revision 1.199
retrieving revision 1.200
diff -u -r1.199 -r1.200
--- http_main.c 1997/08/13 08:37:18 1.199
+++ http_main.c 1997/08/15 18:12:11 1.200
@@ -893,8 +893,27 @@
#elif defined(MAP_ANON) || defined(MAP_FILE)
/* BSD style */
+#ifdef CONVEXOS11
+ /*
+ * 9-Aug-97 - Jeff Venters ([EMAIL PROTECTED])
+ * ConvexOS maps address space as follows:
+ * 0x00000000 - 0x7fffffff : Kernel
+ * 0x80000000 - 0xffffffff : User
+ * Start mmapped area 1GB above start of text.
+ *
+ * Also, the length requires a pointer as the actual length is
+ * returned (rounded up to a page boundary).
+ */
+ {
+ unsigned len = SCOREBOARD_SIZE;
+
+ m = mmap((caddr_t)0xC0000000, &len,
+ PROT_READ | PROT_WRITE, MAP_ANON | MAP_SHARED, NOFD, 0);
+ }
+#else
m = mmap((caddr_t)0, SCOREBOARD_SIZE,
PROT_READ | PROT_WRITE, MAP_ANON | MAP_SHARED, -1, 0);
+#endif
if (m == (caddr_t)-1)
{
perror("mmap");