obey "use mmap" on case tables
authorAndrew Tridgell <tridge@samba.org>
Mon, 17 Dec 2001 11:13:57 +0000 (11:13 +0000)
committerAndrew Tridgell <tridge@samba.org>
Mon, 17 Dec 2001 11:13:57 +0000 (11:13 +0000)
source/lib/util_file.c

index 5ecf526280fe4b2bc1c281d2fedc3d7b6abddf36..0cd60fed268aca587be6a5cf2d431765b898961a 100644 (file)
@@ -430,17 +430,19 @@ void *map_file(char *fname, size_t size)
        size_t s2 = 0;
        void *p = NULL;
 #ifdef HAVE_MMAP
-       int fd;
-       fd = open(fname, O_RDONLY, 0);
-       if (fd == -1) {
-               DEBUG(1,("Failed to load %s - %s\n", fname, strerror(errno)));
-               return NULL;
-       }
-       p = mmap(NULL, size, PROT_READ, MAP_SHARED|MAP_FILE, fd, 0);
-       close(fd);
-       if (p == MAP_FAILED) {
-               DEBUG(1,("Failed to mmap %s - %s\n", fname, strerror(errno)));
-               return NULL;
+       if (lp_use_mmap()) {
+               int fd;
+               fd = open(fname, O_RDONLY, 0);
+               if (fd == -1) {
+                       DEBUG(1,("Failed to load %s - %s\n", fname, strerror(errno)));
+                       return NULL;
+               }
+               p = mmap(NULL, size, PROT_READ, MAP_SHARED|MAP_FILE, fd, 0);
+               close(fd);
+               if (p == MAP_FAILED) {
+                       DEBUG(1,("Failed to mmap %s - %s\n", fname, strerror(errno)));
+                       return NULL;
+               }
        }
 #endif
        if (!p) {