blob: 3a0212d6982050c1cfd411cb1054a8cf3f60852e [file] [log] [blame]
/* 2.t
- io_setup (#2)
- with invalid context pointer
- with maxevents <= 0
- with an already initialized ctxp
*/
int attempt(int n, io_context_t *ctxp, int expect)
{
int res;
printf("expect %3d: io_setup(%5d, %p) = ", expect, n, ctxp);
fflush(stdout);
res = io_setup(n, ctxp);
printf("%3d [%s]%s\n", res, strerror(-res),
(res != expect) ? " -- FAILED" : "");
if (res != expect)
return 1;
return 0;
}
int test_main(void)
{
io_context_t ctx;
int status = 0;
ctx = NULL;
status |= attempt(-1000, KERNEL_RW_POINTER, -EFAULT);
status |= attempt( 1000, KERNEL_RW_POINTER, -EFAULT);
status |= attempt( 0, KERNEL_RW_POINTER, -EFAULT);
status |= attempt(-1000, &ctx, -EINVAL);
status |= attempt( -1, &ctx, -EINVAL);
status |= attempt( 0, &ctx, -EINVAL);
assert(ctx == NULL);
status |= attempt( 1, &ctx, 0);
status |= attempt( 1, &ctx, -EINVAL);
return status;
}