aboutsummaryrefslogtreecommitdiffstats
path: root/src/tests/vm/mmap-over-code.c
blob: d3619a3ecc6b2048369b4020eec303545f11a7ad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
/* Verifies that mapping over the code segment is disallowed. */

#include <stdint.h>
#include <round.h>
#include <syscall.h>
#include "tests/lib.h"
#include "tests/main.h"

void
test_main (void) 
{
  uintptr_t test_main_page = ROUND_DOWN ((uintptr_t) test_main, 4096);
  int handle;
  
  CHECK ((handle = open ("sample.txt")) > 1, "open \"sample.txt\"");
  CHECK (mmap (handle, (void *) test_main_page) == MAP_FAILED,
         "try to mmap over code segment");
}