tests/lseek.c: use libtests

* tests/lseek.c: Use SKIP_MAIN_UNDEFINED.
(main): Use assert and perror_msg_and_skip.
This commit is contained in:
Дмитрий Левин 2016-01-05 23:27:42 +00:00
parent 3f6a552e1e
commit b699cb7230

View File

@ -1,5 +1,5 @@
/*
* Copyright (c) 2015 Dmitry V. Levin <ldv@altlinux.org>
* Copyright (c) 2015-2016 Dmitry V. Levin <ldv@altlinux.org>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@ -30,27 +30,26 @@
#ifdef __NR_lseek
#include <errno.h>
#include <stdio.h>
#include <unistd.h>
#include "kernel_types.h"
# include <assert.h>
# include <errno.h>
# include <stdio.h>
# include <unistd.h>
# include "kernel_types.h"
int
main(void)
{
const kernel_ulong_t offset = (kernel_ulong_t) 0xdefaced0badc0deULL;
int rc;
if (sizeof(offset) > sizeof(long))
rc = lseek(-1, offset, SEEK_SET);
assert(lseek(-1, offset, SEEK_SET) == -1);
else
rc = syscall(__NR_lseek, -1L, offset, SEEK_SET);
assert(syscall(__NR_lseek, -1L, offset, SEEK_SET) == -1);
if (rc != -1 || EBADF != errno)
return 77;
if (EBADF != errno)
perror_msg_and_skip("lseek");
printf("lseek(-1, %llu, SEEK_SET) = -1 EBADF (Bad file descriptor)\n",
printf("lseek(-1, %llu, SEEK_SET) = -1 EBADF (%m)\n",
(unsigned long long) offset);
puts("+++ exited with 0 +++");
@ -59,10 +58,6 @@ main(void)
#else
int
main(void)
{
return 77;
}
SKIP_MAIN_UNDEFINED("__NR_lseek")
#endif