/* This test checks that the stack is properly extended even if
the first access to a stack location occurs inside a system
call.
From Godmar Back. */
#include
#include
#include tests/vm/sample.inc
#include tests/lib.h
#include tests/main.h
void
test_main (void)
{
int handle;
int slen = strlen (sample);
char buf2[65536];
/* Write file via write(). */
CHECK (create (sample.txt, slen), create sample.txt);
CHECK ((handle = open (sample.txt)) > 1, open sample.txt);
CHECK (write (handle, sample, slen) == slen, write sample.txt);
close (handle);
/* Read back via read(). */
CHECK ((handle = open (sample.txt)) > 1, 2nd open sample.txt);
CHECK (read (handle, buf2 + 32768, slen) == slen, read sample.txt);
CHECK (!memcmp (sample, buf2 + 32768, slen), compare written data against read data);
close (handle);
}
Reviews
There are no reviews yet.