dreid 99/11/03 04:30:59
Modified: src/lib/apr/mmap/beos Makefile.in mmap.c src/lib/apr/mmap/unix Makefile.in mmap.c Added: src/lib/apr/mmap/beos common.c src/lib/apr/mmap/unix common.c Log: Add more functions to the APR mmap. Revision Changes Path 1.3 +16 -1 apache-2.0/src/lib/apr/mmap/beos/Makefile.in Index: Makefile.in =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/beos/Makefile.in,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- Makefile.in 1999/10/21 21:13:24 1.2 +++ Makefile.in 1999/11/03 12:30:55 1.3 @@ -15,7 +15,7 @@ LIB=libmmap.a -OBJS=mmap.o +OBJS=mmap.o common.o .c.o: $(CC) $(CFLAGS) -c $(INCLUDES) $< @@ -50,3 +50,18 @@ && rm Makefile.new # DO NOT REMOVE +common.o: common.c ../unix/common.c ../unix/../beos/mmap_h.h \ + ../../include/apr_general.h ../../include/apr_config.h \ + ../../include/apr_errno.h ../../include/apr_mmap.h \ + ../../include/apr_network_io.h ../../include/apr_portable.h \ + ../../include/apr_thread_proc.h ../../include/apr_file_io.h \ + ../../include/apr_win.h ../../include/apr_lock.h \ + ../../include/apr_time.h ../../file_io/unix/fileio.h \ + ../../include/apr_lib.h +mmap.o: mmap.c mmap_h.h ../../include/apr_general.h \ + ../../include/apr_config.h ../../include/apr_errno.h \ + ../../include/apr_mmap.h ../../include/apr_network_io.h \ + ../../include/apr_portable.h ../../include/apr_thread_proc.h \ + ../../include/apr_file_io.h ../../include/apr_win.h \ + ../../include/apr_lock.h ../../include/apr_time.h \ + ../../include/apr_lib.h ../../file_io/unix/fileio.h 1.3 +4 -4 apache-2.0/src/lib/apr/mmap/beos/mmap.c Index: mmap.c =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/beos/mmap.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- mmap.c 1999/10/21 21:13:26 1.2 +++ mmap.c 1999/11/03 12:30:55 1.3 @@ -134,7 +134,7 @@ ap_status_t ap_mmap_open_create(struct mmap_t **new, ap_file_t *file, ap_context_t *cont) { - void *mm; + char *mm; area_id aid = -1; char *areaname = "apr_mmap\0"; uint32 size; @@ -164,8 +164,8 @@ size = ((file->size -1) / B_PAGE_SIZE) + 1; - aid = create_area(areaname, &mm, B_ANY_ADDRESS, size * B_PAGE_SIZE, - B_LAZY_LOCK, B_READ_AREA|B_WRITE_AREA); + aid = create_area(areaname, (void*)&mm, B_ANY_ADDRESS, size * B_PAGE_SIZE, + B_FULL_LOCK, B_READ_AREA|B_WRITE_AREA); free(areaname); if (aid < B_OK) { @@ -180,7 +180,7 @@ (*new)->size = file->size; (*new)->area = aid; (*new)->cntxt = cont; - + /* register the cleanup... */ ap_register_cleanup((*new)->cntxt, (void*)(*new), mmap_cleanup, ap_null_cleanup); 1.1 apache-2.0/src/lib/apr/mmap/beos/common.c Index: common.c =================================================================== #include "../unix/common.c" 1.4 +1 -1 apache-2.0/src/lib/apr/mmap/unix/Makefile.in Index: Makefile.in =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/unix/Makefile.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- Makefile.in 1999/10/30 05:59:24 1.3 +++ Makefile.in 1999/11/03 12:30:58 1.4 @@ -15,7 +15,7 @@ LIB=libmmap.a -OBJS=mmap.o +OBJS=mmap.o common.o .c.o: $(CC) $(CFLAGS) -c $(INCLUDES) $< 1.4 +1 -1 apache-2.0/src/lib/apr/mmap/unix/mmap.c Index: mmap.c =================================================================== RCS file: /home/cvs/apache-2.0/src/lib/apr/mmap/unix/mmap.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- mmap.c 1999/10/24 04:30:19 1.3 +++ mmap.c 1999/11/03 12:30:59 1.4 @@ -111,7 +111,7 @@ (*new)->sinfo = st; (*new)->size = st.st_size; (*new)->cntxt = cont; - + /* register the cleanup... */ ap_register_cleanup((*new)->cntxt, (void*)(*new), mmap_cleanup, ap_null_cleanup); 1.1 apache-2.0/src/lib/apr/mmap/unix/common.c Index: common.c =================================================================== /* ==================================================================== * Copyright (c) 1999 The Apache Group. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * * 3. All advertising materials mentioning features or use of this * software must display the following acknowledgment: * "This product includes software developed by the Apache Group * for use in the Apache HTTP server project (http://www.apache.org/)." * * 4. The names "Apache Server" and "Apache Group" must not be used to * endorse or promote products derived from this software without * prior written permission. For written permission, please contact * [EMAIL PROTECTED] * * 5. Products derived from this software may not be called "Apache" * nor may "Apache" appear in their names without prior written * permission of the Apache Group. * * 6. Redistributions of any form whatsoever must retain the following * acknowledgment: * "This product includes software developed by the Apache Group * for use in the Apache HTTP server project (http://www.apache.org/)." * * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * ==================================================================== * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Group. * For more information on the Apache Group and the Apache HTTP server * project, please see <http://www.apache.org/>. * */ /* common .c * This file has any function that is truly common and platform * neutral. Or at least that's the theory. * * The header files are a problem so there are a few #ifdef's to take * care of those. * */ #if HAVE_MMAP #ifdef BEOS #include "../beos/mmap_h.h" #include <kernel/OS.h> #else #include "mmap_h.h" #include <sys/mman.h> #endif #include "fileio.h" #include "apr_mmap.h" #include "apr_general.h" #include "apr_portable.h" #include "apr_lib.h" #include <errno.h> #include <string.h> #include <stdio.h> ap_int32_t ap_mmap_inode_compare(const void *m1, const void *m2) { const ap_mmap_t *a = *(ap_mmap_t **)m1; const ap_mmap_t *b = *(ap_mmap_t **)m2; ap_int32_t c; c = a->sinfo.st_ino - b->sinfo.st_ino; if (c == 0) { return a->sinfo.st_dev - b->sinfo.st_dev; } return c; } ap_int32_t ap_mmap_filename_compare(const void *m1, const void *m2) { const ap_mmap_t *a = m1; const ap_mmap_t *b = m2; return strcmp(a->filename, b->filename); } ap_status_t ap_mmap_offset(void **addr, ap_mmap_t *mmap, ap_size_t offset) { if (offset < 0 || offset > mmap->size) return APR_EINVAL; (*addr) = mmap->mm + offset; fprintf(stderr,"ap_mmap_offset (%p, %d) ==> %p\n",mmap->mm, offset, (*addr)); return APR_SUCCESS; } #endif