]> mj.ucw.cz Git - libucw.git/commitdiff
MJ's suggestion:
authorRobert Spalek <robert@ucw.cz>
Wed, 23 Jun 2004 14:46:09 +0000 (14:46 +0000)
committerRobert Spalek <robert@ucw.cz>
Wed, 23 Jun 2004 14:46:09 +0000 (14:46 +0000)
use MAP_ANONYMOUS in mmap() instead of opening /dev/zero

lib/lizard-safe.c

index fc4b228f22951f6bdf04d9517b09d31643c4ef15..c26a53bc7f92611ada03b40f93a217b685bbd162 100644 (file)
 struct lizard_buffer *
 lizard_alloc(uns max_len)
 {
-  static byte *zero = "/dev/zero";
-  int fd = open(zero, O_RDWR);
-  if (fd < 0)
-    die("open(%s): %m", zero);
   struct lizard_buffer *buf = xmalloc(sizeof(struct lizard_buffer));
   buf->len = ALIGN(max_len + PAGE_SIZE, PAGE_SIZE);
-  buf->ptr = mmap(NULL, buf->len, PROT_READ | PROT_WRITE, MAP_PRIVATE, fd, 0);
+  buf->ptr = mmap(NULL, buf->len, PROT_READ | PROT_WRITE, MAP_ANONYMOUS | MAP_PRIVATE, -1, 0);
   if (buf->ptr == MAP_FAILED)
-    die("mmap(%s): %m", zero);
+    die("mmap(anonymous): %m");
   return buf;
 }