X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=lib%2Ftest_mmap.ml;h=731be0937b04ddb1987ac7e57fdb0be9627a4526;hb=898c12fcca817229061fbe50b88651328ea4ec03;hp=dae44da1ef7b3fcd6173f72aa3b8e169c7a038a0;hpb=c67e17c4ca67b1a53d16394b8f3218665c19642c;p=virt-mem.git diff --git a/lib/test_mmap.ml b/lib/test_mmap.ml index dae44da..731be09 100644 --- a/lib/test_mmap.ml +++ b/lib/test_mmap.ml @@ -11,6 +11,14 @@ let () = let mem = add_string mem data 0x1000L in let data = String.make 0x1800 '\003' in let mem = add_string mem data 0L in + let data = String.make 0x800 '\004' in + let mem = add_string mem data 0x1000L in + let data = String.make 0x800 '\005' in + let mem = add_string mem data 0x2800L in + let data = String.make 1 '\006' in + let mem = add_string mem data 0L in + let data = "hello, world!\000" in + let mem = add_string mem data 0x20L in List.iter ( fun addr -> @@ -22,5 +30,18 @@ let () = 0x7ffL; 0x800L; 0x801L; 0xfffL; 0x1000L; 0x1001L; 0x17ffL; 0x1800L; 0x1801L; - 0x1fffL; 0x2000L; 0x2001L ] + 0x1fffL; 0x2000L; 0x2001L; + 0x27ffL; 0x2800L; 0x2801L; + 0x2fffL; 0x3000L; 0x3001L ]; + + List.iter ( + fun addr -> + try + printf "three bytes @ %Lx = %S\n" addr (get_bytes mem addr 3) + with + Invalid_argument "get_bytes" -> + printf "three bytes @ %Lx found a HOLE\n" addr + ) [ 0L; 0x1L; 0x7ffL; 0xfffL; 0x17ffL; 0x1fffL; 0x27ffL; 0x2800L; + 0x2ffdL; 0x2fffL ]; + printf "string @ 0x20 = %S\n" (get_string mem 0x20L)