[Pkg-clamav-commits] [SCM] Debian repository for ClamAV branch, debian/unstable, updated. debian/0.95+dfsg-1-6156-g094ec9b

aCaB acab at clamav.net
Sun Apr 4 00:59:59 UTC 2010


The following commit has been merged in the debian/unstable branch:
commit 2491b28a288a2a1cc9b0c60bf8ca589bda621438
Author: aCaB <acab at clamav.net>
Date:   Thu Aug 20 13:17:10 2009 +0200

    set_paged

diff --git a/libclamav/fmap.c b/libclamav/fmap.c
index 6b05fc6..29b2409 100644
--- a/libclamav/fmap.c
+++ b/libclamav/fmap.c
@@ -24,9 +24,8 @@
 #include "clamav-config.h"
 #endif
 
-/* THIS IS FUCKED UP AND BREAKS MMAP
 #define _XOPEN_SOURCE 500
-*/
+#define _BSD_SOURCE
 
 #include <sys/types.h>
 #include <sys/stat.h>
@@ -71,6 +70,13 @@ static unsigned int fmap_is_paged(struct F_MAP *m, unsigned int page) {
     return ((s & FM_MASK_PAGED) != 0);
 }
 
+static void fmap_set_paged(struct F_MAP *m, unsigned int page, unsigned int val) {
+    if(val)
+	m->bitmap[page] |= FM_MASK_PAGED;
+    else
+	m->bitmap[page] &= ~FM_MASK_PAGED;
+}
+
 static unsigned int fmap_is_seen(struct F_MAP *m, unsigned int page) {
     uint16_t s = m->bitmap[page];
     return ((s & FM_MASK_SEEN) != 0);
@@ -145,6 +151,7 @@ static int fmap_readpage(struct F_MAP *m, unsigned int page) {
 	readsz = m->pgsz;
     if(pread(m->fd, pptr, m->pgsz, m->offset + page * m->pgsz) != readsz)
 	return 1;
+    fmap_set_paged(m, page, 1);
     return 0;
 }
 

-- 
Debian repository for ClamAV



More information about the Pkg-clamav-commits mailing list