* apps/testing/testsuites/kernel/syscall/include/SyscallTest.h
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership. The
* ASF licenses this file to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance with the
* License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
* WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
* License for the specific language governing permissions and limitations
* under the License.
*
****************************************************************************/
#ifndef __SYSCALLTEST_H
#define __SYSCALLTEST_H
* Included Files
****************************************************************************/
#include <nuttx/config.h>
#include <dirent.h>
#include <arpa/inet.h>
#include <sys/un.h>
#include <unistd.h>
#include <inttypes.h>
#include <fcntl.h>
#include <stdint.h>
#include <stdarg.h>
#include <stddef.h>
#include <setjmp.h>
#include <cmocka.h>
#include <dirent.h>
int checknames(char *pfilnames, DIR *ddir);
int check_and_report_ftruncatetest(int fd, off_t offset, char data,
off_t trunc_len);
int tst_fill_file(const char *path, char pattern, size_t bs,
size_t bcount);
char *sock_addr(const struct sockaddr *sa, socklen_t salen, char *res,
size_t len);
*/
unsigned short get_unused_port(void(cleanup_fn)(void),
unsigned short family, int type);
int safe_close(int fildes);
int safe_socket(int domain, int type, int protocol);
int safe_connect(int sockfd, const struct sockaddr *addr,
socklen_t addrlen);
int safe_getsockname(int sockfd, struct sockaddr *addr,
socklen_t *addrlen);
int safe_bind(int socket, const struct sockaddr *address,
socklen_t address_len);
int safe_listen(int socket, int backlog);
int safe_open(const char *pathname, int oflags, ...);
* Pre-processor Definitions
****************************************************************************/
* directory
*/
#define SYSCALL_TEST_DIR "syscall_test_dir"
#define MOUNT_DIR CONFIG_TESTS_TESTSUITES_MOUNT_DIR
#define SAFE_OPEN(pathname, oflags, ...) \
safe_open((pathname), (oflags), ##__VA_ARGS__)
#define SAFE_FCNTL(fd, cmd, ...) \
({ \
int tst_ret_ = fcntl(fd, cmd, ##__VA_ARGS__); \
if (tst_ret_ == -1) \
{ \
syslog(LOG_ERR, "fcntl(%i,%s,...) failed", fd, #cmd); \
fail_msg("test fail !"); \
} \
tst_ret_ == -1 ? 0 : tst_ret_; \
})
#define SAFE_CLOSE(fd) \
do \
{ \
safe_close((fd)); \
fd = -1; \
} while (0)
* Public Function Prototypes
****************************************************************************/
int cmtestfillfile(const char *path, char pattern, size_t bs,
size_t bcount);
int test_nuttx_syscall_test_group_setup(void **state);
int test_nuttx_syscall_test_group_teardown(void **state);
int checknames(char *pfilnames, DIR *ddir);
int check_and_report_ftruncatetest(int fd, off_t offset, char data,
off_t trunc_len);
int tst_fill_fd(int fd, char pattern, size_t bs, size_t bcount);
int tst_fill_file(const char *path, char pattern, size_t bs,
size_t bcount);
int safe_open(const char *pathname, int oflags, ...);
ssize_t safe_write(int fildes, const void *buf, size_t nbyte);
off_t safe_lseek(int fd, off_t offset, int whence);
int safe_close(int fildes);
void safe_touch(const char *file, const int lineno, const char *pathname,
mode_t mode);
#ifdef CONFIG_NET
char *sock_addr(const struct sockaddr *sa, socklen_t salen, char *res,
size_t len);
unsigned short get_unused_port(void(cleanup_fn)(void),
unsigned short family, int type);
int safe_socket(int domain, int type, int protocol);
int safe_connect(int sockfd, const struct sockaddr *addr,
socklen_t addrlen);
int safe_getsockname(int sockfd, struct sockaddr *addr,
socklen_t *addrlen);
int safe_bind(int socket, const struct sockaddr *address,
socklen_t address_len);
int safe_listen(int socket, int backlog);
#endif
* ***********************************************/
void test_nuttx_syscall_chdir01(FAR void **state);
void test_nuttx_syscall_chdir02(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_accept01(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getitimer01(FAR void **state);
* ****************************************/
void test_nuttx_syscall_clockgettime01(FAR void **state);
* **************************************/
void test_nuttx_syscall_clocknanosleep01(FAR void **state);
void test_nuttx_syscall_clocknanosleep02(FAR void **state);
* ****************************************/
void test_nuttx_syscall_clocksettime01(FAR void **state);
* ************************************************/
void test_nuttx_syscall_close01(FAR void **state);
void test_nuttx_syscall_close02(FAR void **state);
void test_nuttx_syscall_close03(FAR void **state);
* ************************************************/
void test_nuttx_syscall_creat01(FAR void **state);
void test_nuttx_syscall_creat02(FAR void **state);
* ************************************************/
void test_nuttx_syscall_fcntl01(FAR void **state);
void test_nuttx_syscall_fcntl02(FAR void **state);
void test_nuttx_syscall_fcntl03(FAR void **state);
void test_nuttx_syscall_fcntl04(FAR void **state);
void test_nuttx_syscall_fcntl05(FAR void **state);
void test_nuttx_syscall_fcntl06(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_fstatfs01(FAR void **state);
* ************************************************/
void test_nuttx_syscall_fsync01(FAR void **state);
void test_nuttx_syscall_fsync02(FAR void **state);
void test_nuttx_syscall_fsync03(FAR void **state);
* ********************************************/
void test_nuttx_syscall_ftruncate01(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getcwd01(FAR void **state);
void test_nuttx_syscall_getcwd02(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getpid01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_getppid01(FAR void **state);
* ******************************************/
void test_nuttx_syscall_gethostname01(FAR void **state);
* *****************************************/
void test_nuttx_syscall_gettimeofday01(FAR void **state);
* ************************************************/
void test_nuttx_syscall_lseek01(FAR void **state);
void test_nuttx_syscall_lseek07(FAR void **state);
* ************************************************/
void test_nuttx_syscall_lstat01(FAR void **state);
* **************************************************/
void test_nuttx_syscall_dup01(FAR void **state);
void test_nuttx_syscall_dup02(FAR void **state);
void test_nuttx_syscall_dup03(FAR void **state);
void test_nuttx_syscall_dup04(FAR void **state);
void test_nuttx_syscall_dup05(FAR void **state);
* **************************************************/
void test_nuttx_syscall_dup201(FAR void **state);
void test_nuttx_syscall_dup202(FAR void **state);
* *********************************************/
void test_nuttx_syscall_fpathconf01(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getegid01(FAR void **state);
void test_nuttx_syscall_getegid02(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_geteuid01(FAR void **state);
void test_nuttx_syscall_geteuid02(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getgid01(FAR void **state);
void test_nuttx_syscall_getgid02(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_getuid01(FAR void **state);
void test_nuttx_syscall_getuid02(FAR void **state);
* *********************************************/
void test_nuttx_syscall_pathconf01(FAR void **state);
* *************************************************/
void test_nuttx_syscall_pipe01(FAR void **state);
void test_nuttx_syscall_pipe02(FAR void **state);
* ************************************************/
void test_nuttx_syscall_pread01(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_pwrite01(FAR void **state);
void test_nuttx_syscall_pwrite02(FAR void **state);
* ************************************************/
void test_nuttx_syscall_rmdir01(FAR void **state);
void test_nuttx_syscall_rmdir02(FAR void **state);
* **********************************************/
void test_nuttx_syscall_truncate01(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_unlink01(FAR void **state);
* *********************************************/
void test_nuttx_syscall_nansleep01(FAR void **state);
void test_nuttx_syscall_nansleep02(FAR void **state);
* *************************************************/
void test_nuttx_syscall_time01(FAR void **state);
void test_nuttx_syscall_time02(FAR void **state);
* *****************************************/
void test_nuttx_syscall_timercreate01(FAR void **state);
* *****************************************/
void test_nuttx_syscall_timerdelete01(FAR void **state);
* ****************************************/
void test_nuttx_syscall_timergettime01(FAR void **state);
* ************************************************/
void test_nuttx_syscall_mkdir01(FAR void **state);
void test_nuttx_syscall_mkdir02(FAR void **state);
void test_nuttx_syscall_mkdir03(FAR void **state);
* ***********************************************/
void test_nuttx_syscall_sched01(FAR void **state);
void test_nuttx_syscall_sched02(FAR void **state);
void test_nuttx_syscall_sched03(FAR void **state);
void test_nuttx_syscall_sched04(FAR void **state);
* ************************************************/
void test_nuttx_syscall_write01(FAR void **state);
void test_nuttx_syscall_write02(FAR void **state);
void test_nuttx_syscall_write03(FAR void **state);
* *************************************************/
void test_nuttx_syscall_read01(FAR void **state);
void test_nuttx_syscall_read02(FAR void **state);
void test_nuttx_syscall_read03(FAR void **state);
void test_nuttx_syscall_read04(FAR void **state);
* **********************************************/
void test_nuttx_syscall_symlink01(FAR void **state);
void test_nuttx_syscall_symlink02(FAR void **state);
* **********************************************/
void test_nuttx_syscall_sockettest01(FAR void **state);
void test_nuttx_syscall_sockettest02(FAR void **state);
* **********************************************/
void test_nuttx_syscall_connect01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_getpeername01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_getsockopt01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_recvfromtest01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_setsockopt01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_listen01(FAR void **state);
* **********************************************/
void test_nuttx_syscall_socketpair01(FAR void **state);
void test_nuttx_syscall_socketpair02(FAR void **state);
* **********************************************/
void test_nuttx_syscall_bind01(FAR void **state);
#endif