... | ... |
@@ -24,16 +24,19 @@ |
24 | 24 |
#include "clamav-config.h" |
25 | 25 |
#endif |
26 | 26 |
|
27 |
+/* THIS IS FUCKED UP AND BREAKS MMAP |
|
28 |
+#define _XOPEN_SOURCE 500 |
|
29 |
+*/ |
|
30 |
+ |
|
27 | 31 |
#include <sys/types.h> |
28 | 32 |
#include <sys/stat.h> |
29 | 33 |
#include <string.h> |
30 |
-#include <sys/mman.h> |
|
31 | 34 |
#include <unistd.h> |
35 |
+#include <sys/mman.h> |
|
32 | 36 |
|
33 | 37 |
#include "others.h" |
34 | 38 |
#include "cltypes.h" |
35 | 39 |
|
36 |
- |
|
37 | 40 |
#define FM_MASK_SCORE 0x3fff |
38 | 41 |
#define FM_MASK_PAGED 0x4000 |
39 | 42 |
#define FM_MASK_SEEN 0x8000 |
... | ... |
@@ -171,3 +174,9 @@ void *fmap_need(struct F_MAP *m, size_t at, size_t len) { |
171 | 171 |
return (void *)ret; |
172 | 172 |
} |
173 | 173 |
|
174 |
+ |
|
175 |
+void fmunmap(struct F_MAP *m) { |
|
176 |
+ void *p = (void *)m; |
|
177 |
+ size_t len = m->pages * m->pgsz + m->hdrsz; |
|
178 |
+ munmap(p, len); |
|
179 |
+} |