00001
00002
00003
00004 #include <string.h>
00005 #include <syscall.h>
00006 #include "tests/vm/sample.inc"
00007 #include "tests/lib.h"
00008 #include "tests/main.h"
00009
00010 void
00011 test_main (void)
00012 {
00013 char *actual[2] = {(char *) 0x10000000, (char *) 0x20000000};
00014 size_t i;
00015 int handle[2];
00016
00017 for (i = 0; i < 2; i++)
00018 {
00019 CHECK ((handle[i] = open ("sample.txt")) > 1,
00020 "open \"sample.txt\" #%zu", i);
00021 CHECK (mmap (handle[i], actual[i]) != MAP_FAILED,
00022 "mmap \"sample.txt\" #%zu at %p", i, (void *) actual[i]);
00023 }
00024
00025 for (i = 0; i < 2; i++)
00026 CHECK (!memcmp (actual[i], sample, strlen (sample)),
00027 "compare mmap'd file %zu against data", i);
00028 }