tests: add advanced UDS tests (test90)

Change-Id: Ib4b81d441368fd9b7e7c7b9cab802bb01fa04065
This commit is contained in:
David van Moolenbroek 2016-07-21 20:50:47 +00:00
parent 27852ebe53
commit baa5830f28
7 changed files with 5308 additions and 2 deletions

View File

@ -1046,6 +1046,7 @@
./usr/libdata/debug/usr/tests/minix-posix/test88.debug minix-debug debug
./usr/libdata/debug/usr/tests/minix-posix/test89.debug minix-debug debug
./usr/libdata/debug/usr/tests/minix-posix/test9.debug minix-debug debug
./usr/libdata/debug/usr/tests/minix-posix/test90.debug minix-debug debug
./usr/libdata/debug/usr/tests/minix-posix/testvm.debug minix-debug debug
./usr/libdata/debug/usr/tests/minix-posix/tvnd.debug minix-debug debug
./usr/libdata/debug/usr/tests/usr.bin/id/h_id.debug minix-debug debug

View File

@ -193,6 +193,7 @@
./usr/tests/minix-posix/test88 minix-tests
./usr/tests/minix-posix/test89 minix-tests
./usr/tests/minix-posix/test9 minix-tests
./usr/tests/minix-posix/test90 minix-tests
./usr/tests/minix-posix/testinterp minix-tests
./usr/tests/minix-posix/testisofs minix-tests
./usr/tests/minix-posix/testkyua minix-tests

View File

@ -54,13 +54,19 @@ LDADD.testvm+= -lsys -ltimers
FILES += testvm.conf
# Network stack testing programs
OBJS.test90+= socklib.o
# Uncomment the following lines to use SOCKLIB_SWEEP_GENERATE=1/2 in socklib.c
#.PATH: ${NETBSDSRCDIR}/minix/usr.bin/trace
#OBJS.test90+= error.o
# Tests to compile, For every architecture
MINIX_TESTS= \
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
41 42 43 44 45 46 48 49 50 52 53 54 55 56 58 59 60 \
61 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 \
81 82 83 84 85 86 87 88 89
81 82 83 84 85 86 87 88 89 90
FILES += t84_h_nonexec.sh

View File

@ -30,7 +30,8 @@ alltests="1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 \
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 \
41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 \
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 \
81 82 83 84 85 86 87 88 89 sh1 sh2 interp mfs isofs vnd rmib"
81 82 83 84 85 86 87 88 89 90 \
sh1 sh2 interp mfs isofs vnd rmib"
tests_no=`expr 0`
# If root, make sure the setuid tests have the correct permissions

1023
minix/tests/socklib.c Normal file

File diff suppressed because it is too large Load Diff

89
minix/tests/socklib.h Normal file
View File

@ -0,0 +1,89 @@
#ifndef MINIX_TEST_SOCKLIB_H
#define MINIX_TEST_SOCKLIB_H
enum state {
S_NEW,
S_N_SHUT_R,
S_N_SHUT_W,
S_N_SHUT_RW,
S_BOUND,
S_LISTENING,
S_L_SHUT_R,
S_L_SHUT_W,
S_L_SHUT_RW,
S_CONNECTING,
S_C_SHUT_R,
S_C_SHUT_W,
S_C_SHUT_RW,
S_CONNECTED,
S_ACCEPTED,
S_SHUT_R,
S_SHUT_W,
S_SHUT_RW,
S_RSHUT_R,
S_RSHUT_W,
S_RSHUT_RW,
S_SHUT2_R,
S_SHUT2_W,
S_SHUT2_RW,
S_PRE_EOF,
S_AT_EOF,
S_POST_EOF,
S_PRE_SHUT_R,
S_EOF_SHUT_R,
S_POST_SHUT_R,
S_PRE_SHUT_W,
S_EOF_SHUT_W,
S_POST_SHUT_W,
S_PRE_SHUT_RW,
S_EOF_SHUT_RW,
S_POST_SHUT_RW,
S_PRE_RESET,
S_AT_RESET,
S_POST_RESET,
S_FAILED,
S_POST_FAILED,
S_MAX
};
enum call {
C_ACCEPT,
C_BIND,
C_CONNECT,
C_GETPEERNAME,
C_GETSOCKNAME,
C_GETSOCKOPT_ERR,
C_GETSOCKOPT_KA,
C_GETSOCKOPT_RB,
C_IOCTL_NREAD,
C_LISTEN,
C_RECV,
C_RECVFROM,
C_SEND,
C_SENDTO,
C_SELECT_R,
C_SELECT_W,
C_SELECT_X,
C_SETSOCKOPT_BC,
C_SETSOCKOPT_KA,
C_SETSOCKOPT_L,
C_SETSOCKOPT_RA,
C_SHUTDOWN_R,
C_SHUTDOWN_RW,
C_SHUTDOWN_W,
C_MAX
};
int socklib_sweep_call(enum call call, int fd, struct sockaddr * local_addr,
struct sockaddr * remote_addr, socklen_t addr_len);
void socklib_sweep(int domain, int type, int protocol,
const enum state * states, unsigned int nstates, const int * results,
int (* proc)(int domain, int type, int protocol, enum state,
enum call));
void socklib_large_transfers(int fd[2]);
void socklib_producer_consumer(int fd[2]);
void socklib_stream_recv(int (* socket_pair)(int, int, int, int *), int domain,
int type, int (* break_recv)(int, const char *, size_t));
#endif /* !MINIX_TEST_SOCKLIB_H */

4185
minix/tests/test90.c Normal file

File diff suppressed because it is too large Load Diff