| Index: third_party/lcov/descriptions.tests
|
| ===================================================================
|
| --- third_party/lcov/descriptions.tests (revision 0)
|
| +++ third_party/lcov/descriptions.tests (revision 0)
|
| @@ -0,0 +1,2990 @@
|
| +personality01
|
| + Check that we can set the personality for a process.
|
| +personality02
|
| + Check that we get EINVAL for a bad personality.
|
| +exit01
|
| + Check that exit returns the correct values to the waiting parent
|
| +exit02
|
| + Check that exit flushes output file buffers and closes files upon
|
| + exiting
|
| +wait02
|
| + Basic test for wait(2) system call.
|
| +wait401
|
| + check that a call to wait4() correctly waits for a child
|
| + process to exit
|
| +wait402
|
| + check for ECHILD errno when using an illegal pid value
|
| +
|
| +waitpid01
|
| + Check that when a child kills itself by generating an alarm
|
| + exception, the waiting parent is correctly notified.
|
| +waitpid02
|
| + Check that when a child kills itself by generating an integer zero
|
| + divide exception, the waiting parent is correctly notified.
|
| +waitpid03
|
| + Check that parent waits until specific child has returned.
|
| +waitpid04
|
| + test to check the error conditions in waitpid sys call
|
| +waitpid05
|
| + Check that when a child kills itself with a kill statement after
|
| + determining its process id by using getpid, the parent receives a
|
| + correct report of the cause of its death. This also indirectly
|
| + checks that getpid returns the correct process id.
|
| +waitpid06
|
| + Tests to see if pid's returned from fork and waitpid are same.
|
| +waitpid07
|
| + Tests to see if pid's returned from fork and waitpid are same.
|
| +waitpid08
|
| + Tests to see if pid's returned from fork and waitpid are same
|
| +waitpid09
|
| + Check ability of parent to wait until child returns, and that the
|
| + child's process id is returned through the waitpid. Check that
|
| + waitpid returns immediately if no child is present.
|
| +waitpid10
|
| + Tests to see if pid's returned from fork and waitpid are same
|
| +waitpid11
|
| + Tests to see if pid's returned from fork and waitpid are same
|
| +waitpid12
|
| + Tests to see if pid's returned from fork and waitpid are same
|
| +waitpid13
|
| + Tests to see if pid's returned from fork and waitpid are same
|
| +fcntl01
|
| + Test F_DUPFD, F_SETFL cmds of fcntl
|
| +fcntl02
|
| + Basic test for fcntl(2) using F_DUPFD argument.
|
| +fcntl03
|
| + Basic test for fcntl(2) using F_GETFD argument.
|
| +fcntl04
|
| + Basic test for fcntl(2) using F_GETFL argument.
|
| +fcntl05
|
| + Basic test for fcntl(2) using F_GETLK argument.
|
| +fcntl06
|
| + Error checking conditions for remote locking of regions of a file.
|
| +fcntl07
|
| + Close-On-Exec functional test.
|
| +fcntl07B
|
| + Close-On-Exec of named pipe functional test.
|
| +fcntl08
|
| + Basic test for fcntl(2) using F_SETFL argument.
|
| +fcntl09
|
| + Basic test for fcntl(2) using F_SETLK argument.
|
| +fcntl10
|
| + Basic test for fcntl(2) using F_SETLKW argument.
|
| +fcntl11
|
| + Testcase to check locking of regions of a file
|
| +
|
| +fcntl12
|
| +
|
| + Testcase to test that fcntl() sets EMFILE for F_DUPFD command.
|
| +
|
| +fcntl13
|
| +
|
| + Testcase to test that fcntl() sets errno correctly.
|
| +
|
| +fcntl14
|
| +
|
| + File locking test cases for fcntl. In Linux, S_ENFMT is not implemented
|
| + in the kernel. However all standard Unix kernels define S_ENFMT as
|
| + S_ISGID. So this test defines S_ENFMT as S_ISGID.
|
| +
|
| +fcntl15
|
| +
|
| + Check that file locks are removed when file closed
|
| +
|
| +fcntl16
|
| +
|
| + Additional file locking test cases for checking proper notification
|
| + of processes on lock change
|
| +
|
| +fcntl17
|
| +
|
| + Check deadlock detection for file locking
|
| +
|
| +fcntl18
|
| +
|
| + Test to check the error conditions in fcntl system call
|
| +
|
| +fcntl19
|
| +
|
| + Testcase to check locking of regions of a file
|
| +
|
| +fcntl20
|
| +
|
| + Check locking of regions of a file
|
| +
|
| +fcntl21
|
| +
|
| + Check locking of regions of a file
|
| +
|
| +dup01
|
| +
|
| + Basic test for dup(2).
|
| +
|
| +dup02
|
| +
|
| + Negative test for dup(2) with bad fd.
|
| +
|
| +dup03
|
| +
|
| + Negative test for dup(2) (too many fds).
|
| +
|
| +dup04
|
| +
|
| + Basic test for dup(2) of a system pipe descriptor.
|
| +
|
| +dup05
|
| +
|
| + Basic test for dup(2) of a named pipe descriptor.
|
| +
|
| +dup201
|
| +
|
| + Negative tests for dup2() with bad fd (EBADF), and for "too many
|
| + open files" (EMFILE)
|
| +
|
| +dup202
|
| +
|
| + Is the access mode the same for both file descriptors?
|
| + 0: read only ? "0444"
|
| + 1: write only ? "0222"
|
| + 2: read/write ? "0666"
|
| +
|
| +dup203
|
| +
|
| + Testcase to check the basic functionality of dup2().
|
| +
|
| +dup204
|
| +
|
| + Testcase to check the basic functionality of dup2(2).
|
| +
|
| +
|
| +msync01
|
| +
|
| + Verify that, msync() succeeds, when the region to synchronize, is part
|
| + of, or all of a mapped region.
|
| +
|
| +msync02
|
| +
|
| + Verify that msync() succeeds when the region to synchronize is mapped
|
| + shared and the flags argument is MS_INVALIDATE.
|
| +
|
| +msync03
|
| +
|
| + Verify that, msync() fails, when the region to synchronize, is outside
|
| + the address space of the process.
|
| +
|
| +msync04
|
| +
|
| + Verify that, msync() fails, when the region to synchronize, is mapped
|
| + but the flags argument is invalid.
|
| +
|
| +msync05
|
| +
|
| + Verify that, msync() fails, when the region to synchronize, was not
|
| + mapped.
|
| +
|
| +
|
| +sendfile02
|
| +
|
| + Testcase to test the basic functionality of the sendfile(2) system call.
|
| +
|
| +sendfile03
|
| +
|
| + Testcase to test that sendfile(2) system call returns appropriate
|
| + errnos on error.
|
| +
|
| +fork01
|
| + Basic test for fork(2).
|
| +fork02
|
| + Test correct operation of fork:
|
| + pid == 0 in child;
|
| + pid > 0 in parent from wait;
|
| +fork03
|
| + Check that child can use a large text space and do a large
|
| + number of operations.
|
| +fork04
|
| + Child inheritance of Environment Variables after fork().
|
| +fork05
|
| + Make sure LDT is propagated correctly
|
| +fork06
|
| + Test that a process can fork children a large number of
|
| + times in succession
|
| +fork07
|
| + Check that all children inherit parent's file descriptor
|
| +fork08
|
| + Check if the parent's file descriptors are affected by
|
| + actions in the child; they should not be.
|
| +fork09
|
| + Check that child has access to a full set of files.
|
| +fork10
|
| + Check inheritance of file descriptor by children, they
|
| + should all be referring to the same file.
|
| +fork11
|
| + Test that parent gets a pid from each child when doing wait
|
| +vfork01
|
| + Fork a process using vfork() and verify that, the attribute values like
|
| + euid, ruid, suid, egid, rgid, sgid, umask, inode and device number of
|
| + root and current working directories are same as that of the parent
|
| + process.
|
| +vfork02
|
| + Fork a process using vfork() and verify that, the pending signals in
|
| + the parent are not pending in the child process.
|
| +ioctl01
|
| +
|
| + Testcase to check the errnos set by the ioctl(2) system call.
|
| +
|
| +ioctl02
|
| +
|
| + Testcase to test the TCGETA, and TCSETA ioctl implementations for
|
| + the tty driver
|
| +
|
| +sockioctl01
|
| +
|
| + Verify that ioctl() on sockets returns the proper errno for various
|
| + failure cases
|
| +
|
| +getitimer01
|
| + check that a correct call to getitimer() succeeds
|
| +
|
| +
|
| +getitimer02
|
| + check that a getitimer() call fails as expected
|
| + with an incorrect second argument.
|
| +
|
| +getitimer03
|
| + check that a getitimer() call fails as expected
|
| + with an incorrect first argument.
|
| +
|
| +setitimer01
|
| + check that a reasonable setitimer() call succeeds.
|
| +
|
| +
|
| +setitimer02
|
| + check that a setitimer() call fails as expected
|
| + with incorrect values.
|
| +
|
| +setitimer03
|
| + check that a setitimer() call fails as expected
|
| + with incorrect values.
|
| +
|
| +float_trigo
|
| + increase CPUs workload - verify that results of some math functions are stable
|
| + trigonometric (acos, asin, atan, atan2, cos, sin, tan),
|
| + hyperbolic (cosh, sinh, tanh),
|
| +
|
| +float_exp_log
|
| + increase CPUs workload - verify that results of some math functions are stable
|
| + exponential and logarithmic functions (exp, log, log10),
|
| + Functions that manipulate floating-point numbers (modf, ldexp, frexp),
|
| + Euclidean distance function (hypot),
|
| +
|
| +float_bessel
|
| + increase CPUs workload - verify that results of some math functions are stable
|
| + Bessel (j0, j1, y0, y1),
|
| + Computes the natural logarithm of the gamma function (lgamma),
|
| +
|
| +fload_power
|
| + increase CPUs workload - verify that results of some math functions are stable
|
| + Computes sqrt, power, fmod
|
| +
|
| +float_iperb
|
| + increase CPUs workload - verify that results of some math functions are stable
|
| +pth_str01
|
| +
|
| + Creates a tree of threads
|
| +
|
| +pth_str02
|
| +
|
| + Creates n threads
|
| +
|
| +pth_str03
|
| +
|
| + Creates a tree of threads does calculations, and
|
| + returns result to parent
|
| +
|
| +
|
| +asyncio02
|
| +
|
| + Write/close flushes data to the file.
|
| +
|
| +
|
| +fpathconf
|
| +
|
| + Basic test for fpathconf(2)
|
| +
|
| +gethostid01
|
| +
|
| + Basic test for gethostid(2)
|
| +
|
| +
|
| +pathconf01
|
| +
|
| + Basic test for pathconf(2)
|
| +
|
| +setpgrp01
|
| +
|
| + Basic test for the setpgrp(2) system call.
|
| +
|
| +setpgrp02
|
| +
|
| + Testcase to check the basic functionality of the setpgrp(2) syscall.
|
| +
|
| +
|
| +ulimit01
|
| +
|
| + Basic test for the ulimit(2) system call.
|
| +
|
| +mmstress
|
| +
|
| + Performs General Stress with Race conditions
|
| +
|
| +mmap1
|
| +
|
| + Test the LINUX memory manager. The program is aimed at
|
| + stressing the memory manager by simultaneous map/unmap/read
|
| + by light weight processes, the test is scheduled to run for
|
| + a minimum of 24 hours.
|
| +
|
| +mmap2
|
| +
|
| + Test the LINUX memory manager. The program is aimed at
|
| + stressing the memory manager by repeated map/write/unmap of a
|
| + of a large gb size file.
|
| +
|
| +mmap3
|
| +
|
| + Test the LINUX memory manager. The program is aimed at
|
| + stressing the memory manager by repeated map/write/unmap
|
| + of file/memory of random size (maximum 1GB) this is done by
|
| + multiple processes.
|
| +
|
| +mmap001
|
| +
|
| + Tests mmapping a big file and writing it once
|
| +
|
| +mmap01
|
| +
|
| + Verify that, mmap() succeeds when used to map a file where size of the
|
| + file is not a multiple of the page size, the memory area beyond the end
|
| + of the file to the end of the page is accessible. Also, verify that
|
| + this area is all zeroed and the modifications done to this area are
|
| + not written to the file.
|
| +
|
| +mmap02
|
| +
|
| + Call mmap() with prot parameter set to PROT_READ and with the file
|
| + descriptor being open for read, to map a file creating mapped memory
|
| + with read access. The minimum file permissions should be 0444.
|
| +
|
| +mmap03
|
| +
|
| + Call mmap() to map a file creating a mapped region with execute access
|
| + under the following conditions -
|
| + - The prot parameter is set to PROT_EXE
|
| + - The file descriptor is open for read
|
| + - The file being mapped has execute permission bit set.
|
| + - The minimum file permissions should be 0555.
|
| +
|
| + The call should succeed to map the file creating mapped memory with the
|
| + required attributes.
|
| +
|
| +mmap04
|
| +
|
| + Call mmap() to map a file creating a mapped region with read/exec access
|
| + under the following conditions -
|
| + - The prot parameter is set to PROT_READ|PROT_EXEC
|
| + - The file descriptor is open for read
|
| + - The file being mapped has read and execute permission bit set.
|
| + - The minimum file permissions should be 0555.
|
| +
|
| + The call should succeed to map the file creating mapped memory with the
|
| + required attributes.
|
| +
|
| +
|
| +mmap05
|
| +
|
| + Call mmap() to map a file creating mapped memory with no access under
|
| + the following conditions -
|
| + - The prot parameter is set to PROT_NONE
|
| + - The file descriptor is open for read(any mode other than write)
|
| + - The minimum file permissions should be 0444.
|
| +
|
| + The call should succeed to map the file creating mapped memory with the
|
| + required attributes.
|
| +
|
| +mmap06
|
| +
|
| + Call mmap() to map a file creating a mapped region with read access
|
| + under the following conditions -
|
| + - The prot parameter is set to PROT_READ
|
| + - The file descriptor is open for writing.
|
| +
|
| + The call should fail to map the file.
|
| +
|
| +
|
| +mmap07
|
| +
|
| + Call mmap() to map a file creating a mapped region with read access
|
| + under the following conditions -
|
| + - The prot parameter is set to PROT_WRITE
|
| + - The file descriptor is open for writing.
|
| + - The flags parameter has MAP_PRIVATE set.
|
| +
|
| + The call should fail to map the file.
|
| +
|
| +mmap08
|
| +
|
| + Verify that mmap() fails to map a file creating a mapped region
|
| + when the file specified by file descriptor is not valid.
|
| +
|
| +
|
| +mremap01
|
| +
|
| + Verify that, mremap() succeeds when used to expand the existing
|
| + virtual memory mapped region to the requested size where the
|
| + virtual memory area was previously mapped to a file using mmap().
|
| +
|
| +mremap02
|
| +
|
| + Verify that,
|
| + mremap() fails when used to expand the existing virtual memory mapped
|
| + region to the requested size, if the virtual memory area previously
|
| + mapped was not page aligned or invalid argument specified.
|
| +
|
| +mremap03
|
| +
|
| + Verify that,
|
| + mremap() fails when used to expand the existing virtual memory mapped
|
| + region to the requested size, if there already exists mappings that
|
| + cover the whole address space requested or the old address specified was
|
| + not mapped.
|
| +
|
| +mremap04
|
| +
|
| + Verify that,
|
| + mremap() fails when used to expand the existing virtual memory mapped
|
| + region to the requested size, if the memory area cannot be expanded at
|
| + the current virtual address and MREMAP_MAYMOVE flag not set.
|
| +
|
| +munmap01
|
| +
|
| + Verify that, munmap call will succeed to unmap a mapped file or
|
| + anonymous shared memory region from the calling process's address space
|
| + and after successful completion of munmap, the unmapped region is no
|
| + longer accessible.
|
| +
|
| +munmap02
|
| +
|
| + Verify that, munmap call will succeed to unmap a mapped file or
|
| + anonymous shared memory region from the calling process's address space
|
| + if the region specified by the address and the length is part or all of
|
| + the mapped region.
|
| +
|
| +munmap03
|
| +
|
| + Verify that, munmap call will fail to unmap a mapped file or anonymous
|
| + shared memory region from the calling process's address space if the
|
| + address and the length of the region to be unmapped points outside the
|
| + calling process's address space
|
| +
|
| +brk01
|
| + Test the basic functionality of brk.
|
| +
|
| +sbrk01
|
| + Basic test for the sbrk(2) system call.
|
| +
|
| +
|
| +mprotect01
|
| +
|
| + Testcase to check the error conditions for mprotect(2)
|
| +
|
| +mprotect02
|
| +
|
| + Testcase to check the mprotect(2) system call.
|
| +
|
| +mprotect03
|
| +
|
| + Testcase to check the mprotect(2) system call.
|
| +
|
| +msgctl01
|
| + create a message queue, then issue the IPC_STAT command
|
| + and RMID commands to test the functionality
|
| +
|
| +
|
| +msgctl02
|
| + create a message queue, then issue the IPC_SET command
|
| + to lower the msg_qbytes value.
|
| +
|
| +
|
| +msgctl03
|
| + create a message queue, then issue the IPC_RMID command
|
| +
|
| +
|
| +
|
| +msgctl04
|
| + test for EACCES, EFAULT and EINVAL errors using
|
| + a variety of incorrect calls.
|
| +
|
| +
|
| +msgctl05
|
| + test for EPERM error
|
| +
|
| +
|
| +
|
| +msgget01
|
| + create a message queue, write a message to it and
|
| + read it back.
|
| +
|
| +
|
| +msgget02
|
| + test for EEXIST and ENOENT errors
|
| +
|
| +
|
| +msgget03
|
| + test for an ENOSPC error by using up all available
|
| + message queues.
|
| +
|
| +msgget04
|
| + test for an EACCES error by creating a message queue
|
| + with no read or write permission and then attempting
|
| + to access it with various permissions.
|
| +
|
| +msgrcv01
|
| + test that msgrcv() receives the expected message
|
| +
|
| +msgrcv02
|
| + test for EACCES and EFAULT errors
|
| +
|
| +msgrcv03
|
| + test for EINVAL error
|
| +
|
| +msgrcv04
|
| + test for E2BIG and ENOMSG errors
|
| +
|
| +msgrcv05
|
| + test for EINTR error
|
| +
|
| +msgrcv06
|
| + test for EIDRM error
|
| +
|
| +msgsnd01
|
| + test that msgsnd() enqueues a message correctly
|
| +
|
| +msgsnd02
|
| + test for EACCES and EFAULT errors
|
| +
|
| +msgsnd03
|
| + test for EINVAL error
|
| +
|
| +msgsnd04
|
| + test for EAGAIN error
|
| +
|
| +msgsnd05
|
| + test for EINTR error
|
| +
|
| +
|
| +msgsnd06
|
| + test for EIDRM error
|
| +
|
| +link02
|
| +
|
| + Basic test for link(2)
|
| +
|
| +link03
|
| +
|
| + Multi links tests
|
| +
|
| +link04
|
| +
|
| + Negative test cases for link(2)
|
| +
|
| +link05
|
| +
|
| + Multi links (EMLINK) negative test
|
| +
|
| +readlink01
|
| +
|
| + Verify that, readlink will succeed to read the contents of the symbolic
|
| + link created the process.
|
| +
|
| +readlink02
|
| +
|
| + Basic test for the readlink(2) system call
|
| +
|
| +readlink03
|
| +
|
| + Verify that,
|
| + 1) readlink(2) returns -1 and sets errno to EACCES if search/write
|
| + permission is denied in the directory where the symbolic link
|
| + resides.
|
| + 2) readlink(2) returns -1 and sets errno to EINVAL if the buffer size
|
| + is not positive.
|
| + 3) readlink(2) returns -1 and sets errno to EINVAL if the specified
|
| + file is not a symbolic link file.
|
| + 4) readlink(2) returns -1 and sets errno to ENAMETOOLONG if the
|
| + pathname component of symbolic link is too long (ie, > PATH_MAX).
|
| + 5) readlink(2) returns -1 and sets errno to ENOENT if the component of
|
| + symbolic link points to an empty string.
|
| +
|
| +readlink04
|
| +
|
| + Verify that, readlink call will succeed to read the contents of the
|
| + symbolic link if invoked by non-root user who is not the owner of the
|
| + symbolic link.
|
| +
|
| +
|
| +symlink01
|
| +
|
| + Test of various file function calls, such as rename or open, on a symbolic
|
| + link file.
|
| +
|
| +symlink02
|
| +
|
| + Basic test for the symlink(2) system call.
|
| +
|
| +symlink03
|
| +
|
| + Verify that,
|
| + 1) symlink(2) returns -1 and sets errno to EACCES if search/write
|
| + permission is denied in the directory where the symbolic link is
|
| + being created.
|
| + 2) symlink(2) returns -1 and sets errno to EEXIST if the specified
|
| + symbolic link already exists.
|
| + 3) symlink(2) returns -1 and sets errno to EFAULT if the specified
|
| + file or symbolic link points to invalid address.
|
| + 4) symlink(2) returns -1 and sets errno to ENAMETOOLONG if the
|
| + pathname component of symbolic link is too long (ie, > PATH_MAX).
|
| + 5) symlink(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname of symbolic link is not a directory.
|
| + 6) symlink(2) returns -1 and sets errno to ENOENT if the component of
|
| + symbolic link points to an empty string.
|
| +
|
| +symlink04
|
| +
|
| + Verify that, symlink will succeed to create a symbolic link of an existing
|
| + object name path.
|
| +
|
| +
|
| +symlink05
|
| +
|
| + Verify that, symlink will succeed to create a symbolic link of an
|
| + non-existing object name path.
|
| +
|
| +
|
| +unlink05
|
| +
|
| + Basic test for the unlink(2) system call.
|
| +
|
| +unlink06
|
| +
|
| + Test for the unlink(2) system call of a FIFO.
|
| +
|
| +unlink07
|
| +
|
| + Tests for error handling for the unlink(2) system call.
|
| +
|
| +unlink08
|
| +
|
| + More tests for error handling for the unlink(2) system call.
|
| +
|
| +
|
| +linktest
|
| +
|
| + Regression test for max links per file
|
| +
|
| +rename01
|
| +
|
| + This test will verify the rename(2) syscall basic functionality.
|
| + Verify rename() works when the "new" file or directory does not exist.
|
| +
|
| +rename02
|
| +
|
| + Basic test for the rename(2) system call
|
| +
|
| +rename03
|
| +
|
| + This test will verify that rename(2) functions correctly
|
| + when the "new" file or directory exists
|
| +
|
| +rename04
|
| +
|
| + This test will verify that rename(2) failed when newpath is
|
| + a non-empty directory and return EEXIST or ENOTEMPTY
|
| +
|
| +rename05
|
| +
|
| + This test will verify that rename(2) fails with EISDIR
|
| +
|
| +rename06
|
| +
|
| + This test will verify that rename(2) failed in EINVAL
|
| +
|
| +rename07
|
| +
|
| + This test will verify that rename(2) failed in ENOTDIR
|
| +
|
| +rename08
|
| +
|
| + This test will verify that rename(2) syscall failed in EFAULT
|
| +
|
| +rename09
|
| +
|
| + check rename() fails with EACCES
|
| +
|
| +rename10
|
| +
|
| + This test will verify that rename(2) syscall fails with ENAMETOOLONG
|
| + and ENOENT
|
| +
|
| +rename11
|
| +
|
| + This test will verify that rename(2) failed in EBUSY
|
| +
|
| +rename12
|
| +
|
| + check rename() fails with EPERM
|
| +
|
| +rename13
|
| +
|
| + Verify rename() return successfully and performs no other action
|
| + when "old" file and "new" file link to the same file.
|
| +
|
| +rmdir01
|
| +
|
| + This test will verify that rmdir(2) syscall basic functionality.
|
| + verify rmdir(2) returns a value of 0 and the directory being
|
| + removed
|
| +
|
| +rmdir02
|
| +
|
| + This test will verify that rmdir(2) fail in
|
| + 1. ENOTEMPTY
|
| + 2. EBUSY
|
| + 3. ENAMETOOLONG
|
| + 4. ENOENT
|
| + 5. ENOTDIR
|
| + 6. EFAULT
|
| + 7. EFAULT
|
| +
|
| +rmdir03
|
| +
|
| + check rmdir() fails with EPERM or EACCES
|
| +
|
| +rmdir04
|
| +
|
| + Basic test for the rmdir(2) system call
|
| +
|
| +rmdir05
|
| +
|
| + Verify that rmdir(2) returns a value of -1 and sets errno to indicate the error.
|
| +
|
| +
|
| +
|
| +mkdir01
|
| +
|
| + Basic errno test for mkdir(2)
|
| +
|
| +mkdir02
|
| +
|
| + This test will verify that new directory created
|
| + by mkdir(2) inherits the group ID from the parent
|
| + directory and S_ISGID bit, if the S_ISGID bit is set
|
| + in the parent directory.
|
| +
|
| +mkdir03
|
| +
|
| + Check mkdir() with various error conditions that should produce
|
| + EFAULT, ENAMETOOLONG, EEXIST, ENOENT and ENOTDIR
|
| +
|
| +mkdir04
|
| +
|
| + Attempt to create a directory in a directory having no permissions.
|
| +
|
| +mkdir05
|
| +
|
| + This test will verify the mkdir(2) syscall basic functionality
|
| +
|
| +mkdir08
|
| +
|
| + Basic test for mkdir(2)
|
| +
|
| +
|
| +mknod01
|
| +
|
| + Basic test for mknod(2)
|
| +
|
| +mknod02
|
| +
|
| + Verify that mknod(2) succeeds when used to create a filesystem
|
| + node with set group-ID bit set on a directory without set group-ID bit set.
|
| + The node created should have set group-ID bit set and its gid should be
|
| + equal to that of its parent directory.
|
| +
|
| +mknod03
|
| +
|
| + Verify that mknod(2) succeeds when used to create a filesystem
|
| + node with set group-ID bit set on a directory with set group-ID bit set.
|
| + The node created should have set group-ID bit set and its gid should be
|
| + equal to the effective gid of the process.
|
| +
|
| +mknod04
|
| +
|
| + Verify that mknod(2) succeeds when used to create a filesystem
|
| + node on a directory with set group-ID bit set.
|
| + The node created should not have group-ID bit set and its gid should be
|
| + equal to the effective gid of the process.
|
| +
|
| +mknod05
|
| +
|
| + Verify that mknod(2) succeeds when used by root to create a filesystem
|
| + node with set group-ID bit set on a directory with set group-ID bit set.
|
| + The node created should have set group-ID bit set and its gid should be
|
| + equal to that of its parent directory.
|
| +
|
| +
|
| +mknod06
|
| +
|
| + Verify that,
|
| + 1) mknod(2) returns -1 and sets errno to EEXIST if specified path
|
| + already exists.
|
| + 2) mknod(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 3) mknod(2) returns -1 and sets errno to ENOENT if the directory
|
| + component in pathname does not exist.
|
| + 4) mknod(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component was too long.
|
| + 5) mknod(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| +
|
| +mknod07
|
| +
|
| + Verify that,
|
| + 1) mknod(2) returns -1 and sets errno to EPERM if the process id of
|
| + the caller is not super-user.
|
| + 2) mknod(2) returns -1 and sets errno to EACCES if parent directory
|
| + does not allow write permission to the process.
|
| +
|
| +mknod08
|
| +
|
| + Verify that mknod(2) succeeds when used to create a filesystem
|
| + node on a directory without set group-ID bit set. The node created
|
| + should not have set group-ID bit set and its gid should be equal to that
|
| + of its parent directory.
|
| +
|
| +
|
| +
|
| +
|
| +access01
|
| +
|
| + Basic test for access(2) using F_OK, R_OK, W_OK, and X_OK arguments.
|
| +
|
| +access02
|
| +
|
| + Verify that access() succeeds to check the read/write/execute permissions
|
| + on a file if the mode argument passed was R_OK/W_OK/X_OK.
|
| +
|
| + Also verify that, access() succeeds to test the accessibility of the file
|
| + referred to by symbolic link if the pathname points to a symbolic link.
|
| +
|
| +access03
|
| +
|
| + EFAULT error testing for access(2).
|
| +
|
| +access04
|
| +
|
| + Verify that,
|
| + 1. access() fails with -1 return value and sets errno to EACCES
|
| + if the permission bits of the file mode do not permit the
|
| + requested (Read/Write/Execute) access.
|
| + 2. access() fails with -1 return value and sets errno to EINVAL
|
| + if the specified access mode argument is invalid.
|
| + 3. access() fails with -1 return value and sets errno to EFAULT
|
| + if the pathname points outside allocate address space for the
|
| + process.
|
| + 4. access() fails with -1 return value and sets errno to ENOENT
|
| + if the specified file doesn't exist (or pathname is NULL).
|
| + 5. access() fails with -1 return value and sets errno to ENAMETOOLONG
|
| + if the pathname size is > PATH_MAX characters.
|
| +
|
| +access05
|
| +
|
| + Verify that access() succeeds to check the existence of a file if
|
| + search access is permitted on the pathname of the specified file.
|
| +
|
| +access06
|
| +
|
| + EFAULT error testing for access(2).
|
| +
|
| +chroot01
|
| +
|
| + Testcase to check the whether chroot sets errno to EPERM.
|
| +
|
| +chroot02
|
| +
|
| + Test functionality of chroot(2)
|
| +
|
| +chroot03
|
| +
|
| + Testcase to test whether chroot(2) sets errno correctly.
|
| +
|
| +pipeio
|
| +
|
| + This tool can be used to beat on system or named pipes.
|
| + See the help() function below for user information.
|
| +
|
| +pipe01
|
| +
|
| + Testcase to check the basic functionality of the pipe(2) syscall:
|
| + Check that both ends of the pipe (both file descriptors) are
|
| + available to a process opening the pipe.
|
| +
|
| +pipe05
|
| +
|
| + Check what happens when pipe is passed a bad file descriptor.
|
| +
|
| +pipe06
|
| +
|
| + Check what happens when the system runs out of pipes.
|
| +
|
| +pipe08
|
| +
|
| + Check that a SIGPIPE signal is generated when a write is
|
| + attempted on an empty pipe.
|
| +
|
| +pipe09
|
| +
|
| + Check that two processes can use the same pipe at the same time.
|
| +
|
| +pipe10
|
| +
|
| + Check that parent can open a pipe and have a child read from it
|
| +
|
| +pipe11
|
| +
|
| + Check if many children can read what is written to a pipe by the
|
| + parent.
|
| +
|
| +
|
| +sem01
|
| +
|
| + Creates a semaphore and two processes. The processes
|
| + each go through a loop where they semdown, delay for a
|
| + random amount of time, and semup, so they will almost
|
| + always be fighting for control of the semaphore.
|
| +
|
| +sem02
|
| + The application creates several threads using pthread_create().
|
| + One thread performs a semop() with the SEM_UNDO flag set. The
|
| + change in semaphore value performed by that semop should be
|
| + "undone" only when the last pthread exits.
|
| +
|
| +
|
| +semctl01
|
| +
|
| + test the 10 possible semctl() commands
|
| +
|
| +semctl02
|
| +
|
| + test for EACCES error
|
| +
|
| +semctl03
|
| +
|
| + test for EINVAL and EFAULT errors
|
| +
|
| +semctl04
|
| +
|
| + test for EPERM error
|
| +
|
| +
|
| +semctl05
|
| +
|
| + test for ERANGE error
|
| +
|
| +semget01
|
| +
|
| + test that semget() correctly creates a semaphore set
|
| +
|
| +semget02
|
| +
|
| + test for EACCES and EEXIST errors
|
| +
|
| +semget03
|
| +
|
| + test for ENOENT error
|
| +
|
| +semget05
|
| +
|
| + test for ENOSPC error
|
| +
|
| +semget06
|
| +
|
| + test for EINVAL error
|
| +
|
| +semop01
|
| +
|
| + test that semop() basic functionality is correct
|
| +
|
| +semop02
|
| +
|
| + test for E2BIG, EACCES, EFAULT and EINVAL errors
|
| +
|
| +semop03
|
| +
|
| + test for EFBIG error
|
| +
|
| +semop04
|
| +
|
| + test for EAGAIN error
|
| +
|
| +semop05
|
| +
|
| + test for EINTR and EIDRM errors
|
| +
|
| +
|
| +
|
| +msgctl01
|
| + create a message queue, then issue the IPC_STAT command
|
| + and RMID commands to test the functionality
|
| +
|
| +
|
| +msgctl02
|
| + create a message queue, then issue the IPC_SET command
|
| + to lower the msg_qbytes value.
|
| +
|
| +
|
| +msgctl03
|
| + create a message queue, then issue the IPC_RMID command
|
| +
|
| +
|
| +
|
| +msgctl04
|
| + test for EACCES, EFAULT and EINVAL errors using
|
| + a variety of incorrect calls.
|
| +
|
| +
|
| +msgctl05
|
| + test for EPERM error
|
| +
|
| +
|
| +
|
| +msgget01
|
| + create a message queue, write a message to it and
|
| + read it back.
|
| +
|
| +
|
| +msgget02
|
| + test for EEXIST and ENOENT errors
|
| +
|
| +
|
| +msgget03
|
| + test for an ENOSPC error by using up all available
|
| + message queues.
|
| +
|
| +msgget04
|
| + test for an EACCES error by creating a message queue
|
| + with no read or write permission and then attempting
|
| + to access it with various permissions.
|
| +
|
| +msgrcv01
|
| + test that msgrcv() receives the expected message
|
| +
|
| +msgrcv02
|
| + test for EACCES and EFAULT errors
|
| +
|
| +msgrcv03
|
| + test for EINVAL error
|
| +
|
| +msgrcv04
|
| + test for E2BIG and ENOMSG errors
|
| +
|
| +msgrcv05
|
| + test for EINTR error
|
| +
|
| +msgrcv06
|
| + test for EIDRM error
|
| +
|
| +msgsnd01
|
| + test that msgsnd() enqueues a message correctly
|
| +
|
| +msgsnd02
|
| + test for EACCES and EFAULT errors
|
| +
|
| +msgsnd03
|
| + test for EINVAL error
|
| +
|
| +msgsnd04
|
| + test for EAGAIN error
|
| +
|
| +msgsnd05
|
| + test for EINTR error
|
| +
|
| +
|
| +msgsnd06
|
| + test for EIDRM error
|
| +
|
| +shmat01
|
| + test that shmat() works correctly
|
| +
|
| +shmat02
|
| + check for EINVAL and EACCES errors
|
| +
|
| +
|
| +shmat03
|
| + test for EACCES error
|
| +
|
| +
|
| +shmctl01
|
| + test the IPC_STAT, IPC_SET and IPC_RMID commands as
|
| + they are used with shmctl()
|
| +
|
| +
|
| +shmctl02
|
| + check for EACCES, EFAULT and EINVAL errors
|
| +
|
| +
|
| +shmctl03
|
| + check for EACCES, and EPERM errors
|
| +
|
| +
|
| +shmdt01
|
| + check that shared memory is detached correctly
|
| +
|
| +
|
| +shmdt02
|
| + check for EINVAL error
|
| +
|
| +
|
| +shmget01
|
| + test that shmget() correctly creates a shared memory segment
|
| +
|
| +
|
| +shmget02
|
| + check for ENOENT, EEXIST and EINVAL errors
|
| +
|
| +
|
| +shmget03
|
| + test for ENOSPC error
|
| +
|
| +
|
| +shmget04
|
| + test for EACCES error
|
| +
|
| +
|
| +shmget05
|
| + test for EACCES error
|
| +
|
| +openfile
|
| +
|
| + Creates files and opens simultaneously
|
| +
|
| +open01
|
| +
|
| + Open a file with oflag = O_CREAT set, does it set the sticky bit off?
|
| +
|
| + Open "/tmp" with O_DIRECTORY, does it set the S_IFDIR bit on?
|
| +
|
| +open02
|
| +
|
| + Test if open without O_CREAT returns -1 if a file does not exist.
|
| +
|
| +open03
|
| +
|
| + Basic test for open(2)
|
| +
|
| +open04
|
| +
|
| + Testcase to check that open(2) sets EMFILE if a process opens files
|
| + more than its descriptor size
|
| +
|
| +open05
|
| +
|
| + Testcase to check open(2) sets errno to EACCES correctly.
|
| +
|
| +open06
|
| +
|
| + Testcase to check open(2) sets errno to ENXIO correctly.
|
| +
|
| +open07
|
| +
|
| + Test the open(2) system call to ensure that it sets ELOOP correctly.
|
| +
|
| +open08
|
| +
|
| + Check for the following errors:
|
| + 1. EEXIST
|
| + 2. EISDIR
|
| + 3. ENOTDIR
|
| + 4. ENAMETOOLONG
|
| + 5. EFAULT
|
| + 6. ETXTBSY
|
| +
|
| +
|
| +openfile
|
| +
|
| + Creates files and opens simultaneously
|
| +
|
| +
|
| +chdir01
|
| +
|
| + Check proper operation of chdir(): tests whether the
|
| + system call can it change the current, working directory, and find a
|
| + file there? Will it fail on a non-directory entry ?
|
| +
|
| +chdir02
|
| +
|
| + Basic test for chdir(2).
|
| +
|
| +chdir03
|
| +
|
| + Testcase for testing that chdir(2) sets EACCES errno
|
| +
|
| +chdir04
|
| +
|
| + Testcase to test whether chdir(2) sets errno correctly.
|
| +
|
| +
|
| +chmod01
|
| +
|
| + Verify that, chmod(2) succeeds when used to change the mode permissions
|
| + of a file.
|
| +
|
| +chmod02
|
| +
|
| + Basic test for chmod(2).
|
| +
|
| +chmod03
|
| +
|
| + Verify that, chmod(2) will succeed to change the mode of a file
|
| + and set the sticky bit on it if invoked by non-root (uid != 0)
|
| + process with the following constraints,
|
| + - the process is the owner of the file.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the file.
|
| +
|
| +chmod04
|
| +
|
| + Verify that, chmod(2) will succeed to change the mode of a directory
|
| + and set the sticky bit on it if invoked by non-root (uid != 0) process
|
| + with the following constraints,
|
| + - the process is the owner of the directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the directory.
|
| +
|
| +chmod05
|
| +
|
| + Verify that, chmod(2) will succeed to change the mode of a directory
|
| + but fails to set the setgid bit on it if invoked by non-root (uid != 0)
|
| + process with the following constraints,
|
| + - the process is the owner of the directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is not equal to the group ID of the directory.
|
| +
|
| +chmod06
|
| +
|
| + Verify that,
|
| + 1) chmod(2) returns -1 and sets errno to EPERM if the effective user id
|
| + of process does not match the owner of the file and the process is
|
| + not super user.
|
| + 2) chmod(2) returns -1 and sets errno to EACCES if search permission is
|
| + denied on a component of the path prefix.
|
| + 3) chmod(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) chmod(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component is too long.
|
| + 5) chmod(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| + 6) chmod(2) returns -1 and sets errno to ENOENT if the specified file
|
| + does not exists.
|
| +
|
| +chmod07
|
| +
|
| + Verify that, chmod(2) will succeed to change the mode of a file/directory
|
| + and sets the sticky bit on it if invoked by root (uid = 0) process with
|
| + the following constraints,
|
| + - the process is not the owner of the file/directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the file/directory.
|
| +
|
| +
|
| +chown01
|
| +
|
| + Basic test for chown(2).
|
| +
|
| +chown02
|
| +
|
| + Verify that, when chown(2) invoked by super-user to change the owner and
|
| + group of a file specified by path to any numeric owner(uid)/group(gid)
|
| + values,
|
| + - clears setuid and setgid bits set on an executable file.
|
| + - preserves setgid bit set on a non-group-executable file.
|
| +
|
| +chown03
|
| +
|
| + Verify that, chown(2) succeeds to change the group of a file specified
|
| + by path when called by non-root user with the following constraints,
|
| + - euid of the process is equal to the owner of the file.
|
| + - the intended gid is either egid, or one of the supplementary gids
|
| + of the process.
|
| + Also, verify that chown() clears the setuid/setgid bits set on the file.
|
| +
|
| +chown04
|
| +
|
| + Verify that,
|
| + 1) chown(2) returns -1 and sets errno to EPERM if the effective user id
|
| + of process does not match the owner of the file and the process is
|
| + not super user.
|
| + 2) chown(2) returns -1 and sets errno to EACCES if search permission is
|
| + denied on a component of the path prefix.
|
| + 3) chown(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) chown(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component is too long.
|
| + 5) chown(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| + 6) chown(2) returns -1 and sets errno to ENOENT if the specified file
|
| + does not exists.
|
| +
|
| +chown05
|
| +
|
| + Verify that, chown(2) succeeds to change the owner and group of a file
|
| + specified by path to any numeric owner(uid)/group(gid) values when invoked
|
| + by super-user.
|
| +
|
| +
|
| +close01
|
| +
|
| + Test that closing a regular file and a pipe works correctly
|
| +
|
| +close02
|
| +
|
| + Check that an invalid file descriptor returns EBADF
|
| +
|
| +close08
|
| +
|
| + Basic test for close(2).
|
| +
|
| +
|
| +fchdir01
|
| +
|
| + create a directory and cd into it.
|
| +
|
| +fchdir02
|
| +
|
| + try to cd into a bad directory (bad fd).
|
| +
|
| +
|
| +fchmod01
|
| +
|
| + Basic test for Fchmod(2).
|
| +
|
| +fchmod02
|
| +
|
| + Verify that, fchmod(2) will succeed to change the mode of a file/directory
|
| + set the sticky bit on it if invoked by root (uid = 0) process with
|
| + the following constraints,
|
| + - the process is not the owner of the file/directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the file/directory.
|
| +
|
| +fchmod03
|
| +
|
| + Verify that, fchmod(2) will succeed to change the mode of a file
|
| + and set the sticky bit on it if invoked by non-root (uid != 0)
|
| + process with the following constraints,
|
| + - the process is the owner of the file.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the file.
|
| +
|
| +fchmod04
|
| +
|
| + Verify that, fchmod(2) will succeed to change the mode of a directory
|
| + and set the sticky bit on it if invoked by non-root (uid != 0) process
|
| + with the following constraints,
|
| + - the process is the owner of the directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is equal to the group ID of the directory.
|
| +
|
| +fchmod05
|
| +
|
| + Verify that, fchmod(2) will succeed to change the mode of a directory
|
| + but fails to set the setgid bit on it if invoked by non-root (uid != 0)
|
| + process with the following constraints,
|
| + - the process is the owner of the directory.
|
| + - the effective group ID or one of the supplementary group ID's of the
|
| + process is not equal to the group ID of the directory.
|
| +
|
| +fchmod06
|
| +
|
| + Verify that,
|
| + 1) fchmod(2) returns -1 and sets errno to EPERM if the effective user id
|
| + of process does not match the owner of the file and the process is
|
| + not super user.
|
| + 2) fchmod(2) returns -1 and sets errno to EBADF if the file descriptor
|
| + of the specified file is not valid.
|
| +
|
| +fchmod07
|
| +
|
| + Verify that, fchmod(2) succeeds when used to change the mode permissions
|
| + of a file specified by file descriptor.
|
| +
|
| +
|
| +fchown01
|
| +
|
| + Basic test for fchown(2).
|
| +
|
| +fchown02
|
| +
|
| + Verify that, when fchown(2) invoked by super-user to change the owner and
|
| + group of a file specified by file descriptor to any numeric
|
| + owner(uid)/group(gid) values,
|
| + - clears setuid and setgid bits set on an executable file.
|
| + - preserves setgid bit set on a non-group-executable file.
|
| +
|
| +fchown03
|
| +
|
| + Verify that, fchown(2) succeeds to change the group of a file specified
|
| + by path when called by non-root user with the following constraints,
|
| + - euid of the process is equal to the owner of the file.
|
| + - the intended gid is either egid, or one of the supplementary gids
|
| + of the process.
|
| + Also, verify that fchown() clears the setuid/setgid bits set on the file.
|
| +
|
| +fchown04
|
| +
|
| + Verify that,
|
| + 1) fchown(2) returns -1 and sets errno to EPERM if the effective user id
|
| + of process does not match the owner of the file and the process is
|
| + not super user.
|
| + 2) fchown(2) returns -1 and sets errno to EBADF if the file descriptor
|
| + of the specified file is not valid.
|
| +
|
| +fchown05
|
| +
|
| + Verify that, fchown(2) succeeds to change the owner and group of a file
|
| + specified by file descriptor to any numeric owner(uid)/group(gid) values
|
| + when invoked by super-user.
|
| +
|
| +lchown01
|
| +
|
| + Verify that, lchown(2) succeeds to change the owner and group of a file
|
| + specified by path to any numeric owner(uid)/group(gid) values when invoked
|
| + by super-user.
|
| +
|
| +
|
| +lchown02
|
| +
|
| + Verify that,
|
| + 1) lchown(2) returns -1 and sets errno to EPERM if the effective user id
|
| + of process does not match the owner of the file and the process is
|
| + not super user.
|
| + 2) lchown(2) returns -1 and sets errno to EACCES if search permission is
|
| + denied on a component of the path prefix.
|
| + 3) lchown(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) lchown(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component is too long.
|
| + 5) lchown(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| + 6) lchown(2) returns -1 and sets errno to ENOENT if the specified file
|
| + does not exists.
|
| +
|
| +
|
| +creat01
|
| +
|
| + Testcase to check the basic functionality of the creat(2) system call.
|
| +
|
| +creat03
|
| +
|
| + Testcase to check whether the sticky bit cleared.
|
| +
|
| +creat04
|
| +
|
| + Testcase to check creat(2) fails with EACCES
|
| +
|
| +creat05
|
| +
|
| + Testcase to check that creat(2) system call returns EMFILE.
|
| +
|
| +creat06
|
| +
|
| + Testcase to check creat(2) sets the following errnos correctly:
|
| + 1. EISDIR
|
| + 2. ENAMETOOLONG
|
| + 3. ENOENT
|
| + 4. ENOTDIR
|
| + 5. EFAULT
|
| + 6. EACCES
|
| +
|
| +creat07
|
| +
|
| + Testcase to check creat(2) sets the following errnos correctly:
|
| + 1. ETXTBSY
|
| +
|
| +creat09
|
| +
|
| + Basic test for creat(2) using 0700 argument.
|
| +
|
| +truncate01
|
| +
|
| + Verify that, truncate(2) succeeds to truncate a file to a specified
|
| + length.
|
| +
|
| +
|
| +truncate02
|
| +
|
| + Verify that, truncate(2) succeeds to truncate a file to a certain length,
|
| + but the attempt to read past the truncated length will fail.
|
| +
|
| +
|
| +truncate03
|
| +
|
| + Verify that,
|
| + 1) truncate(2) returns -1 and sets errno to EACCES if search/write
|
| + permission denied for the process on the component of the path prefix
|
| + or named file.
|
| + 2) truncate(2) returns -1 and sets errno to ENOTDIR if the component of
|
| + the path prefix is not a directory.
|
| + 3) truncate(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) truncate(2) returns -1 and sets errno to ENAMETOOLONG if the component
|
| + of a pathname exceeded 255 characters or entire pathname exceeds 1023
|
| + characters.
|
| + 5) truncate(2) returns -1 and sets errno to ENOENT if the named file
|
| + does not exist.
|
| +
|
| +ftruncate01
|
| +
|
| + Verify that, ftruncate(2) succeeds to truncate a file to a specified
|
| + length if the file indicated by file descriptor opened for writing.
|
| +
|
| +ftruncate02
|
| +
|
| + Verify that, ftruncate(2) succeeds to truncate a file to a certain length,
|
| + but the attempt to read past the truncated length will fail.
|
| +
|
| +ftruncate03
|
| +
|
| + Verify that,
|
| + 1) ftruncate(2) returns -1 and sets errno to EINVAL if the specified
|
| + truncate length is less than 0.
|
| + 2) ftruncate(2) returns -1 and sets errno to EBADF if the file descriptor
|
| + of the specified file is not valid.
|
| +
|
| +vhangup01
|
| +
|
| + Check the return value, and errno of vhangup(2)
|
| + when a non-root user calls vhangup().
|
| +
|
| +vhangup02
|
| +
|
| + To test the basic functionality of vhangup(2)
|
| +growfiles
|
| +
|
| + This program will grow a list of files.
|
| + Each file will grow by grow_incr before the same
|
| + file grows twice. Each file is open and closed before next file is opened.
|
| +
|
| +pipe01
|
| +
|
| + Testcase to check the basic functionality of the pipe(2) syscall:
|
| + Check that both ends of the pipe (both file descriptors) are
|
| + available to a process opening the pipe.
|
| +
|
| +pipe05
|
| +
|
| + Check what happens when pipe is passed a bad file descriptor.
|
| +
|
| +pipe06
|
| +
|
| + Check what happens when the system runs out of pipes.
|
| +
|
| +pipe08
|
| +
|
| + Check that a SIGPIPE signal is generated when a write is
|
| + attempted on an empty pipe.
|
| +
|
| +pipe09
|
| +
|
| + Check that two processes can use the same pipe at the same time.
|
| +
|
| +pipe10
|
| +
|
| + Check that parent can open a pipe and have a child read from it
|
| +
|
| +pipe11
|
| +
|
| + Check if many children can read what is written to a pipe by the
|
| + parent.
|
| +
|
| +pipeio
|
| +
|
| + This tool can be used to beat on system or named pipes.
|
| + See the help() function below for user information.
|
| +
|
| + /ipc_stress/message_queue_test_01.c
|
| + /ipc_stress/pipe_test_01.c
|
| + /ipc_stress/semaphore_test_01.c
|
| + /ipc_stress/single_test_01.c
|
| +
|
| +proc01
|
| + Recursively reads all files within /proc filesystem.
|
| +
|
| +lftest
|
| + The purpose of this test is to verify the file size limitations of a filesystem.
|
| + It writes one buffer at a time and lseeks from the beginning of the file to the
|
| + end of the last write position. The intent is to test lseek64.
|
| +
|
| +
|
| +llseek01
|
| +
|
| + Verify that, llseek() call succeeds to set the file pointer position
|
| + to an offset larger than file size. Also, verify that any attempt
|
| + to write to this location fails.
|
| +
|
| +llseek02
|
| +
|
| + Verify that,
|
| + 1. llseek() returns -1 and sets errno to EINVAL, if the 'Whence' argument
|
| + is not a proper value.
|
| + 2. llseek() returns -1 and sets errno to EBADF, if the file handle of
|
| + the specified file is not valid.
|
| +
|
| +lseek01
|
| +
|
| + Basic test for lseek(2)
|
| +
|
| +lseek02
|
| +
|
| + Negative test for lseek(2)
|
| +
|
| +lseek03
|
| +
|
| + Negative test for lseek(2) whence
|
| +
|
| +lseek04
|
| +
|
| + Negative test for lseek(2) of a fifo
|
| +
|
| +lseek05
|
| +
|
| + Negative test for lseek(2) of a pipe
|
| +
|
| +lseek06
|
| +
|
| + Verify that, lseek() call succeeds to set the file pointer position
|
| + to less than or equal to the file size, when a file is opened for
|
| + read or write.
|
| +
|
| +lseek07
|
| +
|
| + Verify that, lseek() call succeeds to set the file pointer position
|
| + to more than the file size, when a file is opened for reading/writing.
|
| +
|
| +lseek08
|
| +
|
| + Verify that, lseek() call succeeds to set the file pointer position
|
| + to the end of the file when 'whence' value set to SEEK_END and any
|
| + attempts to read from that position should fail.
|
| +
|
| +lseek09
|
| +
|
| + Verify that, lseek() call succeeds to set the file pointer position
|
| + to the current specified location, when 'whence' value is set to
|
| + SEEK_CUR and the data read from the specified location should match
|
| + the expected data.
|
| +
|
| +lseek10
|
| +
|
| + Verify that,
|
| + 1. lseek() returns -1 and sets errno to ESPIPE, if the file handle of
|
| + the specified file is associated with a pipe, socket, or FIFO.
|
| + 2. lseek() returns -1 and sets errno to EINVAL, if the 'Whence' argument
|
| + is not a proper value.
|
| + 3. lseek() returns -1 and sets errno to EBADF, if the file handle of
|
| + the specified file is not valid.
|
| +
|
| +rwtest
|
| +
|
| + A wrapper for doio and iogen.
|
| +
|
| +doio
|
| + a general purpose io initiator with system call and
|
| + write logging. See doio.h for the structure which defines
|
| + what doio requests should look like.
|
| +
|
| + Currently doio can handle read,write,reada,writea,ssread,
|
| + sswrite, and many varieties of listio requests.
|
| + For disk io, if the O_SSD flag is set doio will allocate
|
| + the appropriate amount of ssd and do the transfer - thus, doio
|
| + can handle all of the primitive types of file io.
|
| +
|
| +iogen
|
| + A tool for generating file/sds io for a doio process
|
| +
|
| +pread01
|
| +
|
| + Verify the functionality of pread() by writing known data using pwrite()
|
| + to the file at various specified offsets and later read from the file from
|
| + various specified offsets, comparing the data read against the data
|
| + written.
|
| +
|
| +pread02
|
| +
|
| + Verify that,
|
| + 1) pread() fails when attempted to read from an unnamed pipe.
|
| + 2) pread() fails if the specified offset position was invalid.
|
| +
|
| +
|
| +pwrite01
|
| +
|
| + Verify the functionality of pwrite() by writing known data using pwrite()
|
| + to the file at various specified offsets and later read from the file from
|
| + various specified offsets, comparing the data written against the data
|
| + read using read().
|
| +
|
| +pwrite02
|
| +
|
| + Verify that,
|
| + 1) pwrite() fails when attempted to write to an unnamed pipe.
|
| + 2) pwrite() fails if the specified offset position was invalid.
|
| +
|
| +
|
| +read01
|
| +
|
| + Basic test for the read(2) system call
|
| +
|
| +read02
|
| +
|
| + test 1: Does read return -1 if file descriptor is not valid, check for EBADF
|
| +
|
| + test 2: Check if read sets EISDIR, if the fd refers to a directory
|
| +
|
| + test 3: Check if read sets EFAULT, if buf is -1.
|
| +
|
| +read03
|
| +
|
| + Testcase to check that read() sets errno to EAGAIN
|
| +
|
| +read04
|
| +
|
| + Testcase to check if read returns the number of bytes read correctly.
|
| +
|
| +
|
| +readv01
|
| +
|
| + Testcase to check the basic functionality of the readv(2) system call.
|
| +
|
| +readv02
|
| +
|
| + Testcase to check the error conditions of the readv(2) system call.
|
| +
|
| +write01
|
| +
|
| + Basic test for write(2) system call.
|
| +
|
| +write02
|
| +
|
| + Basic functionality test: does the return from write match the count
|
| + of the number of bytes written.
|
| +
|
| +
|
| +write03
|
| +
|
| + Testcase to check that write(2) doesn't corrupt a file when it fails
|
| +
|
| +write04
|
| +
|
| + Testcase to check that write() sets errno to EAGAIN
|
| +
|
| +write05
|
| +
|
| + Check the return value, and errnos of write(2)
|
| + - when the file descriptor is invalid - EBADF
|
| + - when the buf parameter is invalid - EFAULT
|
| + - on an attempt to write to a pipe that is not open for reading - EPIPE
|
| +
|
| +
|
| +writev01
|
| +
|
| + Testcase to check the basic functionality of writev(2) system call.
|
| +
|
| +
|
| +writev02
|
| +
|
| + In these testcases, writev() is called with partially valid data
|
| + to be written in a sparse file.
|
| +
|
| +
|
| +writev03
|
| +
|
| + The testcases are written calling writev() with partially valid data
|
| + to overwrite the contents, to write in the beginning and to write in
|
| + the end of the file.
|
| +
|
| +writev04
|
| +
|
| + The testcases are written calling writev() with partially valid data
|
| + to overwrite the contents, to write in the beginning and to write in
|
| + the end of the file. This is same as writev03, but the length of
|
| + buffer used here is 8192 bytes.
|
| +
|
| +writev05
|
| +
|
| + These testcases are written to test writev() on sparse files. This
|
| + is same as writev02. But the initial write() with valid data is
|
| + done at the beginning of the file.
|
| +
|
| +disktest
|
| +
|
| + Does repeated accesses to a filespec and optionally writes to, reads from,
|
| + and verifies the data. By default, disktest makes assumptions about
|
| + the running environment which allows for a quick start of IO generation.
|
| + However, Disktest has a large number of command line options which can
|
| + be used to adapt the test for a variety of uses including data integrity,
|
| + medium integrity, performance, and simple application simulation.
|
| +
|
| +
|
| +
|
| +
|
| +getdents01
|
| + get a directory entry
|
| +
|
| +getdents02
|
| + check that we get a failure with a bad file descriptor
|
| +
|
| +
|
| +getdents03
|
| + check for an EINVAL error
|
| +
|
| +
|
| +getdents04
|
| + check for an ENOTDIR error
|
| +
|
| +getdents05
|
| + check that we get a failure with a bad dirp address.
|
| +process_stress
|
| + Spawn creates a tree
|
| + of processes with Dval depth and Bval breadth. Each parent will spawn
|
| + Bval children. Each child will store information about themselves
|
| + in shared memory. The leaf nodes will communicate the existence
|
| + of one another through message queues, once each leaf node has
|
| + received communication from all of her siblings she will reduce
|
| + the semaphore count and exit. Meanwhile all parents are waiting
|
| + to hear from their children through the use of semaphores. When
|
| + the semaphore count reaches zero then the parent knows all the
|
| + children have talked to one another. Locking of the connter semaphore
|
| + is provided by the use of another (binary) semaphore.
|
| +
|
| +
|
| +
|
| +
|
| +sched_stress
|
| + Exports required environment variables and runs sched_driver
|
| +sched_driver
|
| + This program uses system calls to change the
|
| + priorities of the throughput measurement testcases.
|
| + When real-time is in effect, priorities 50 through 64
|
| + are used. (MAX_PRI and MIN_PRI) When user-time
|
| + (normal) is in effect, 0-14 (corresponding to nice()
|
| + calls) is used. The driver only keeps track of
|
| + values from 50 to 64, and the testcases will scale
|
| + them down to 0 to 14 when needed, to change the
|
| + priority of a user-time process.
|
| +
|
| +time-schedule
|
| + This programme will determine the context switch
|
| + (scheduling) overhead on a system. It takes into
|
| + account SMP machines. True context switches are
|
| + measured.
|
| +trace_sched
|
| + This utility spawns N tasks, each task sets its priority
|
| + by making a system call to the scheduler. The thread
|
| + function reads the priority that the scheduler sets for
|
| + this task and also reads from /proc the processor this
|
| + task last executed on the information that is gathered
|
| + by the thread function may be in real-time. Its only an
|
| + approximation.
|
| +
|
| +sched_getscheduler01
|
| +
|
| + Testcase to check sched_getscheduler() returns correct return value
|
| +
|
| +sched_getscheduler02
|
| +
|
| + To check for the errno ESRCH
|
| +
|
| +
|
| +sched_setscheduler01
|
| +
|
| + Testcase to test whether sched_setscheduler(2) sets the errnos
|
| + correctly.
|
| +
|
| +sched_setscheduler02
|
| +
|
| + Testcase to test whether sched_setscheduler(2) sets the errnos
|
| + correctly.
|
| +
|
| +
|
| +sched_yield01
|
| +
|
| + Testcase to check that sched_yield returns correct values.
|
| +
|
| +
|
| +nice01
|
| +
|
| + Verify that root can provide a negative value to nice()
|
| + and hence root can decrease the nice value of the process
|
| + using nice() system call
|
| +
|
| +nice02
|
| +
|
| + Verify that any user can successfully increase the nice value of
|
| + the process by passing a higher increment value (> max. applicable limits)
|
| + to nice() system call.
|
| +
|
| +nice03
|
| +
|
| + Verify that any user can successfully increase the nice value of
|
| + the process by passing an increment value (< max. applicable limits) to
|
| + nice() system call.
|
| +
|
| +nice04
|
| +
|
| + Verify that, nice(2) fails when, a non-root user attempts to increase
|
| + the priority of a process by specifying a negative increment value.
|
| +
|
| +nice05
|
| +
|
| + Basic test for nice(2)
|
| +
|
| +
|
| +poll01
|
| +
|
| + Verify that valid open file descriptor must be provided to poll() to
|
| + succeed.
|
| +
|
| +select01
|
| +
|
| + Basic test for the select(2) system call to a fd of regular file with no I/O
|
| + and small timeout
|
| +
|
| +select02
|
| +
|
| + Basic test for the select(2) system call to fd of system pipe with no I/O
|
| + and small timeout
|
| +
|
| +select03
|
| +
|
| + Basic test for the select(2) system call to fd of a named-pipe (FIFO)
|
| +
|
| +select04
|
| +
|
| + Verify that select(2) returns immediately (does not block) if the
|
| + timeout value is zero.
|
| +
|
| +select05
|
| +
|
| + Verify that select(2) fails when one or more of the file descriptor sets
|
| + specify a file descriptor which is not valid.
|
| +
|
| +select06
|
| +
|
| + Verify that select(2) fails when a signal is delivered before any of the
|
| + selected events occur and before the timeout interval expires.
|
| +
|
| +select07
|
| +
|
| + Verify that select(2) fails when an invalid timeout interval is specified.
|
| +
|
| +select08
|
| +
|
| + Verify the functionality of select(2) by passing non-null writefds
|
| + which points to a regular file, pipes or FIFO's.
|
| +
|
| +select09
|
| +
|
| + Verify the functionality of select(2) by passing non-null readfds
|
| + which points to a regular file, pipes or FIFO's.
|
| +
|
| +select10
|
| +
|
| + Verify that a successful call to select() shall return the desired
|
| + number of modified descriptors for which bits are set in the bit masks,
|
| + where descriptors points to a regular file, pipes or FIFO's.
|
| +sem01
|
| +
|
| + Creates a semaphore and two processes. The processes
|
| + each go through a loop where they semdown, delay for a
|
| + random amount of time, and semup, so they will almost
|
| + always be fighting for control of the semaphore.
|
| +
|
| +sem02
|
| + The application creates several threads using pthread_create().
|
| + One thread performs a semop() with the SEM_UNDO flag set. The
|
| + change in semaphore value performed by that semop should be
|
| + "undone" only when the last pthread exits.
|
| +
|
| +
|
| +semctl01
|
| +
|
| + test the 10 possible semctl() commands
|
| +
|
| +semctl02
|
| +
|
| + test for EACCES error
|
| +
|
| +semctl03
|
| +
|
| + test for EINVAL and EFAULT errors
|
| +
|
| +semctl04
|
| +
|
| + test for EPERM error
|
| +
|
| +
|
| +semctl05
|
| +
|
| + test for ERANGE error
|
| +
|
| +semget01
|
| +
|
| + test that semget() correctly creates a semaphore set
|
| +
|
| +semget02
|
| +
|
| + test for EACCES and EEXIST errors
|
| +
|
| +semget03
|
| +
|
| + test for ENOENT error
|
| +
|
| +semget05
|
| +
|
| + test for ENOSPC error
|
| +
|
| +semget06
|
| +
|
| + test for EINVAL error
|
| +
|
| +semop01
|
| +
|
| + test that semop() basic functionality is correct
|
| +
|
| +semop02
|
| +
|
| + test for E2BIG, EACCES, EFAULT and EINVAL errors
|
| +
|
| +semop03
|
| +
|
| + test for EFBIG error
|
| +
|
| +semop04
|
| +
|
| + test for EAGAIN error
|
| +
|
| +semop05
|
| +
|
| + test for EINTR and EIDRM errors
|
| +
|
| +
|
| +shmat01
|
| + test that shmat() works correctly
|
| +
|
| +shmat02
|
| + check for EINVAL and EACCES errors
|
| +
|
| +
|
| +shmat03
|
| + test for EACCES error
|
| +
|
| +
|
| +shmctl01
|
| + test the IPC_STAT, IPC_SET and IPC_RMID commands as
|
| + they are used with shmctl()
|
| +
|
| +
|
| +shmctl02
|
| + check for EACCES, EFAULT and EINVAL errors
|
| +
|
| +
|
| +shmctl03
|
| + check for EACCES, and EPERM errors
|
| +
|
| +
|
| +shmdt01
|
| + check that shared memory is detached correctly
|
| +
|
| +
|
| +shmdt02
|
| + check for EINVAL error
|
| +
|
| +
|
| +shmget01
|
| + test that shmget() correctly creates a shared memory segment
|
| +
|
| +
|
| +shmget02
|
| + check for ENOENT, EEXIST and EINVAL errors
|
| +
|
| +
|
| +shmget03
|
| + test for ENOSPC error
|
| +
|
| +
|
| +shmget04
|
| + test for EACCES error
|
| +
|
| +
|
| +shmget05
|
| + test for EACCES error
|
| +shmat1
|
| +
|
| + Test the LINUX memory manager. The program is aimed at
|
| + stressing the memory manager by repeated shmat/write/read/
|
| + shmatd of file/memory of random size (maximum 1000 * 4096)
|
| + done by multiple processes.
|
| +
|
| +shm_test
|
| +
|
| + This program is designed to stress the Memory management sub -
|
| + system of Linux. This program will spawn multiple pairs of
|
| + reader and writer threads. One thread will create the shared
|
| + segment of random size and write to this memory, the other
|
| + pair will read from this memory.
|
| +
|
| +sigaction01
|
| +
|
| + Test some features of sigaction (see below for more details)
|
| +
|
| +
|
| +sigaction02
|
| +
|
| + Testcase to check the basic errnos set by the sigaction(2) syscall.
|
| +
|
| +
|
| +sigaltstack01
|
| +
|
| + Send a signal using the main stack. While executing the signal handler
|
| + compare a variable's address lying on the main stack with the stack
|
| + boundaries returned by sigaltstack().
|
| +
|
| +
|
| +sigaltstack02
|
| +
|
| + Verify that,
|
| + 1. sigaltstack() fails and sets errno to EINVAL when "ss_flags" field
|
| + pointed to by 'ss' contains invalid flags.
|
| + 2. sigaltstack() fails and sets errno to ENOMEM when the size of alternate
|
| + stack area is less than MINSIGSTKSZ.
|
| +
|
| +sighold02
|
| +
|
| + Basic test for the sighold02(2) system call.
|
| +
|
| +
|
| +signal01
|
| + set the signal handler to our own function
|
| +
|
| +
|
| +signal02
|
| + Test that we get an error using illegal signals
|
| +
|
| +signal03
|
| +
|
| + Boundary value and other invalid value checking of signal setup and signal
|
| + sending.
|
| +
|
| +
|
| +signal04
|
| + restore signals to default behavior
|
| +
|
| +
|
| +signal05
|
| + set signals to be ignored
|
| +
|
| +
|
| +sigprocmask01
|
| +
|
| + Verify that sigprocmask() succeeds to examine and change the calling
|
| + process's signal mask.
|
| + Also, verify that sigpending() succeeds to store signal mask that are
|
| + blocked from delivery and pending for the calling process.
|
| +
|
| +sigrelse01
|
| +
|
| + Basic test for the sigrelse(2) system call.
|
| +
|
| +sigsuspend01
|
| +
|
| + Verify that sigsuspend() succeeds to change process's current signal
|
| + mask with the specified signal mask and suspends the process execution
|
| + until the delivery of a signal.
|
| +kill01
|
| +
|
| + Test case to check the basic functionality of kill().
|
| +
|
| +kill02
|
| +
|
| + Sending a signal to processes with the same process group ID
|
| +
|
| +kill03
|
| +
|
| + Test case to check that kill fails when given an invalid signal.
|
| +
|
| +kill04
|
| +
|
| + Test case to check that kill() fails when passed a non-existent pid.
|
| +
|
| +kill05
|
| +
|
| + Test case to check that kill() fails when passed a pid owned by another
|
| + user.
|
| +
|
| +kill06
|
| +
|
| + Test case to check the basic functionality of kill() when killing an
|
| + entire process group with a negative pid.
|
| +
|
| +kill07
|
| +
|
| + Test case to check that SIGKILL can not be caught.
|
| +
|
| +kill08
|
| +
|
| + Test case to check the basic functionality of kill() when kill an
|
| + entire process group.
|
| +
|
| +kill09
|
| + Basic test for kill(2)
|
| +
|
| +kill10
|
| + Signal flooding test.
|
| +
|
| +
|
| +mtest01
|
| + mallocs memory <chunksize> at a time until malloc fails.
|
| +mallocstress
|
| +
|
| + This program is designed to stress the VMM by doing repeated */
|
| + mallocs and frees, with out using the swap space. This is */
|
| + achieved by spawning N threads with repeatedly malloc and free*/
|
| + a memory of size M. The stress can be increased by increasing */
|
| + the number of repetitions over the default number using the */
|
| + -l [num] option.
|
| +
|
| +clisrv
|
| +
|
| + Sender: Read contents of data file. Write each line to socket, then
|
| + read line back from socket and write to standard output.
|
| + Receiver: Read a stream socket one line at a time and write each line
|
| + back to the sender.
|
| + Usage: pthcli [port number]
|
| +
|
| +
|
| +socket01
|
| +
|
| + Verify that socket() returns the proper errno for various failure cases
|
| +
|
| +
|
| +socketpair01
|
| +
|
| + Verify that socketpair() returns the proper errno for various failure cases
|
| +
|
| +
|
| +sockioctl01
|
| +
|
| + Verify that ioctl() on sockets returns the proper errno for various
|
| + failure cases
|
| +
|
| +connect01
|
| +
|
| + Verify that connect() returns the proper errno for various failure cases
|
| +
|
| +getpeername01
|
| +
|
| + Verify that getpeername() returns the proper errno for various failure cases
|
| +
|
| +
|
| +getsockname01
|
| +
|
| + Verify that getsockname() returns the proper errno for various failure cases
|
| +
|
| +getsockopt01
|
| +
|
| + Verify that getsockopt() returns the proper errno for various failure cases
|
| +
|
| +listen01
|
| +
|
| + Verify that listen() returns the proper errno for various failure cases
|
| +
|
| +accept01
|
| +
|
| + Verify that accept() returns the proper errno for various failure cases
|
| +
|
| +bind01
|
| +
|
| + Verify that bind() returns the proper errno for various failure cases
|
| +
|
| +
|
| +recv01
|
| +
|
| + Verify that recv() returns the proper errno for various failure cases
|
| +
|
| +
|
| +recvfrom01
|
| +
|
| + Verify that recvfrom() returns the proper errno for various failure cases
|
| +
|
| +
|
| +recvmsg01
|
| +
|
| + Verify that recvmsg() returns the proper errno for various failure cases
|
| +
|
| +send01
|
| +
|
| + Verify that send() returns the proper errno for various failure cases
|
| +
|
| +sendmsg01
|
| +
|
| + Verify that sendmsg() returns the proper errno for various failure cases
|
| +sendto01
|
| +
|
| + Verify that sendto() returns the proper errno for various failure cases
|
| +
|
| +setsockopt01
|
| +
|
| + Verify that setsockopt() returns the proper errno for various failure cases
|
| +
|
| +
|
| +fstat01
|
| +
|
| + Basic test for fstat(2)
|
| +
|
| +fstat02
|
| +
|
| + Verify that, fstat(2) succeeds to get the status of a file and fills
|
| + the stat structure elements though file pointed to by file descriptor
|
| + not opened for reading.
|
| +
|
| +fstat03
|
| +
|
| + Verify that, fstat(2) returns -1 and sets errno to EBADF if the file
|
| + pointed to by file descriptor is not valid.
|
| +
|
| +fstat04
|
| +
|
| + Verify that, fstat(2) succeeds to get the status of a file pointed by
|
| + file descriptor and fills the stat structure elements.
|
| +
|
| +
|
| +fstatfs01
|
| +
|
| + Basic test for fstatfs(2)
|
| +
|
| +fstatfs02
|
| +
|
| + Testcase to check fstatfs() sets errno correctly.
|
| +
|
| +lstat01
|
| +
|
| + Verify that, lstat(2) succeeds to get the status of a file pointed to by
|
| + symlink and fills the stat structure elements.
|
| +
|
| +lstat02
|
| +
|
| + Basic test for lstat(2)
|
| +
|
| +lstat03
|
| +
|
| + Verify that,
|
| + 1) lstat(2) returns -1 and sets errno to EACCES if search permission is
|
| + denied on a component of the path prefix.
|
| + 2) lstat(2) returns -1 and sets errno to ENOENT if the specified file
|
| + does not exists or empty string.
|
| + 3) lstat(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) lstat(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component is too long.
|
| + 5) lstat(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| +
|
| +stat01
|
| +
|
| + Verify that, stat(2) succeeds to get the status of a file and fills the
|
| + stat structure elements.
|
| +
|
| +stat02
|
| +
|
| + Verify that, stat(2) succeeds to get the status of a file and fills the
|
| + stat structure elements though process doesn't have read access to the
|
| + file.
|
| +
|
| +
|
| +stat03
|
| +
|
| + Verify that,
|
| + 1) stat(2) returns -1 and sets errno to EACCES if search permission is
|
| + denied on a component of the path prefix.
|
| + 2) stat(2) returns -1 and sets errno to ENOENT if the specified file
|
| + does not exists or empty string.
|
| + 3) stat(2) returns -1 and sets errno to EFAULT if pathname points
|
| + outside user's accessible address space.
|
| + 4) stat(2) returns -1 and sets errno to ENAMETOOLONG if the pathname
|
| + component is too long.
|
| + 5) stat(2) returns -1 and sets errno to ENOTDIR if the directory
|
| + component in pathname is not a directory.
|
| +
|
| +stat05
|
| +
|
| + Basic test for the stat05(2) system call.
|
| +
|
| +statfs01
|
| +
|
| + Basic test for the statfs(2) system call.
|
| +
|
| +statfs02
|
| +
|
| + Testcase to check that statfs(2) sets errno correctly.
|
| +
|
| +
|
| +read01
|
| +
|
| + Basic test for the read(2) system call
|
| +
|
| +read02
|
| +
|
| + test 1: Does read return -1 if file descriptor is not valid, check for EBADF
|
| +
|
| + test 2: Check if read sets EISDIR, if the fd refers to a directory
|
| +
|
| + test 3: Check if read sets EFAULT, if buf is -1.
|
| +
|
| +read03
|
| +
|
| + Testcase to check that read() sets errno to EAGAIN
|
| +
|
| +read04
|
| +
|
| + Testcase to check if read returns the number of bytes read correctly.
|
| +
|
| +umask01
|
| +
|
| + Basic test for the umask(2) system call.
|
| +
|
| +umask02
|
| +
|
| + Check that umask changes the mask, and that the previous
|
| + value of the mask is returned correctly for each value.
|
| +
|
| +umask03
|
| +
|
| + Check that umask changes the mask, and that the previous
|
| + value of the mask is returned correctly for each value.
|
| +
|
| +
|
| +
|
| +getgroups01
|
| +
|
| + Getgroups system call critical test
|
| +
|
| +getgroups02
|
| +
|
| + Basic test for getgroups(2)
|
| +
|
| +getgroups03
|
| +
|
| + Verify that, getgroups() system call gets the supplementary group IDs
|
| + of the calling process.
|
| +
|
| +getgroups04
|
| +
|
| + Verify that,
|
| + getgroups() fails with -1 and sets errno to EINVAL if the size
|
| + argument value is -ve.
|
| +
|
| +gethostname01
|
| +
|
| + Basic test for gethostname(2)
|
| +
|
| +
|
| +getpgid01
|
| +
|
| + Testcase to check the basic functionality of getpgid().
|
| +
|
| +getpgid02
|
| +
|
| + Testcase to check the basic functionality of getpgid().
|
| +
|
| +getpgrp01
|
| + Basic test for getpgrp(2)
|
| +
|
| +
|
| +getpriority01
|
| +
|
| + Verify that getpriority() succeeds get the scheduling priority of
|
| + the current process, process group or user.
|
| +
|
| +
|
| +getpriority02
|
| +
|
| + Verify that,
|
| + 1) getpriority() sets errno to ESRCH if no process was located
|
| + was located for 'which' and 'who' arguments.
|
| + 2) getpriority() sets errno to EINVAL if 'which' argument was
|
| + not one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER.
|
| +
|
| +getresgid01
|
| +
|
| + Verify that getresgid() will be successful to get the real, effective
|
| + and saved user id of the calling process.
|
| +
|
| +getresgid02
|
| +
|
| + Verify that getresgid() will be successful to get the real, effective
|
| + and saved user ids after calling process invokes setregid() to change
|
| + the effective/saved gids to that of specified user.
|
| +
|
| +getresgid03
|
| +
|
| + Verify that getresgid() will be successful to get the real, effective
|
| + and saved user ids after calling process invokes setresgid() to change
|
| + the effective gid to that of specified user.
|
| +
|
| +
|
| +getresuid01
|
| +
|
| + Verify that getresuid() will be successful to get the real, effective
|
| + and saved user id of the calling process.
|
| +
|
| +getresuid02
|
| +
|
| + Verify that getresuid() will be successful to get the real, effective
|
| + and saved user ids after calling process invokes setreuid() to change
|
| + the effective/saved uids to that of specified user.
|
| +
|
| +getresuid03
|
| +
|
| + Verify that getresuid() will be successful to get the real, effective
|
| + and saved user ids after calling process invokes setresuid() to change
|
| + the effective uid to that of specified user.
|
| +
|
| +
|
| +getsid01
|
| +
|
| + call getsid() and make sure it succeeds
|
| +
|
| +getsid02
|
| +
|
| + call getsid() with an invalid PID to produce a failure
|
| +
|
| +
|
| +setfsgid01
|
| +
|
| + Testcase to check the basic functionality of setfsgid(2) system
|
| + call.
|
| +
|
| +setfsuid01
|
| +
|
| + Testcase to test the basic functionality of the setfsuid(2) system
|
| + call.
|
| +
|
| +
|
| +setgid01
|
| +
|
| + Basic test for the setgid(2) system call.
|
| +
|
| +setgid02
|
| +
|
| + Testcase to ensure that the setgid() system call sets errno to EPERM
|
| +
|
| +
|
| +setgroups01
|
| +
|
| + Basic test for the setgroups(2) system call.
|
| +
|
| +setgroups02
|
| +
|
| + Verify that,
|
| + 1. setgroups() fails with -1 and sets errno to EINVAL if the size
|
| + argument value is > NGROUPS
|
| + 2. setgroups() fails with -1 and sets errno to EPERM if the
|
| + calling process is not super-user.
|
| +
|
| +setgroups03
|
| +
|
| + Verify that, only root process can invoke setgroups() system call to
|
| + set the supplementary group IDs of the process.
|
| +
|
| +
|
| +setpgid01
|
| +
|
| + Basic test for setpgid(2) system call.
|
| +
|
| +setpgid02
|
| +
|
| + Testcase to check that setpgid() sets errno correctly.
|
| +
|
| +setpgid03
|
| +
|
| + Test to check the error and trivial conditions in setpgid system call
|
| +
|
| +setpriority01
|
| +
|
| + set the priority for the test process lower.
|
| +
|
| +setpriority02
|
| +
|
| + test for an expected failure by trying to raise
|
| + the priority for the test process while not having
|
| + permissions to do so.
|
| +
|
| +setpriority03
|
| +
|
| + test for an expected failure by using an invalid
|
| + PRIO value
|
| + setpriority04
|
| +
|
| +setpriority04
|
| + test for an expected failure by using an invalid
|
| + process id
|
| +
|
| +
|
| +setpriority05
|
| + test for an expected failure by trying to change
|
| + a process with an ID that is different from the
|
| + test process
|
| +
|
| +setregid01
|
| +
|
| + Basic test for the setregid(2) system call.
|
| +
|
| +setregid02
|
| +
|
| + Test that setregid() fails and sets the proper errno values when a
|
| + non-root user attempts to change the real or effective group id to a
|
| + value other than the current gid or the current effective gid.
|
| +
|
| +setregid03
|
| +
|
| + Test setregid() when executed by a non-root user.
|
| +
|
| +setregid04
|
| +
|
| + Test setregid() when executed by root.
|
| +
|
| +setresuid01
|
| +
|
| + Test setresuid() when executed by root.
|
| +
|
| +setresuid02
|
| +
|
| + Test that a non-root user can change the real, effective and saved
|
| + uid values through the setresuid system call.
|
| +
|
| +
|
| +setresuid03
|
| +
|
| + Test that the setresuid system call sets the proper errno
|
| + values when a non-root user attempts to change the real, effective or
|
| + saved uid to a value other than one of the current uid, the current
|
| + effective uid of the current saved uid. Also verify that setresuid
|
| + fails if an invalid uid value is given.
|
| +
|
| +setreuid01
|
| +
|
| + Basic test for the setreuid(2) system call.
|
| +
|
| +setreuid02
|
| +
|
| + Test setreuid() when executed by root.
|
| +
|
| +setreuid03
|
| +
|
| + Test setreuid() when executed by an unprivileged user.
|
| +
|
| +
|
| +setreuid04
|
| +
|
| + Test that root can change the real and effective uid to an
|
| + unprivileged user.
|
| +
|
| +setreuid05
|
| +
|
| + Test the setreuid() feature, verifying the role of the saved-set-uid
|
| + and setreuid's effect on it.
|
| +
|
| +setreuid06
|
| +
|
| + Test that EINVAL is set when setreuid is given an invalid user id.
|
| +
|
| +setrlimit01
|
| +
|
| + Testcase to check the basic functionality of the setrlimit system call.
|
| +
|
| +
|
| +setrlimit02
|
| +
|
| + Testcase to test the different errnos set by setrlimit(2) system call.
|
| +
|
| +setrlimit03
|
| +
|
| + Test for EPERM when the super-user tries to increase RLIMIT_NOFILE
|
| + beyond the system limit.
|
| +
|
| +setsid01
|
| +
|
| + Test to check the error and trivial conditions in setsid system call
|
| +
|
| +setuid01
|
| +
|
| + Basic test for the setuid(2) system call.
|
| +
|
| +setuid02
|
| +
|
| + Basic test for the setuid(2) system call as root.
|
| +
|
| +setuid03
|
| +
|
| + Test to check the error and trivial conditions in setuid
|
| +
|
| +fs_perms
|
| +
|
| + Regression test for Linux filesystem permissions.
|
| +uname01
|
| +
|
| + Basic test for the uname(2) system call.
|
| +
|
| +uname02
|
| +
|
| + Call uname() with an invalid address to produce a failure
|
| +
|
| +uname03
|
| +
|
| + Call uname() and make sure it succeeds
|
| +sysctl01
|
| +
|
| + Testcase for testing the basic functionality of sysctl(2) system call.
|
| + This testcase attempts to read the kernel parameters using
|
| + sysctl({CTL_KERN, KERN_ }, ...) and compares it with the known
|
| + values.
|
| +
|
| +sysctl03
|
| +
|
| + Testcase to check that sysctl(2) sets errno to EPERM correctly.
|
| +
|
| +
|
| +sysctl04
|
| +
|
| + Testcase to check that sysctl(2) sets errno to ENOTDIR
|
| +
|
| +
|
| +sysctl05
|
| +
|
| + Testcase to check that sysctl(2) sets errno to EFAULT
|
| +
|
| +time01
|
| +
|
| + Basic test for the time(2) system call.
|
| +
|
| +
|
| +time02
|
| +
|
| + Verify that time(2) returns the value of time in seconds since
|
| + the Epoch and stores this value in the memory pointed to by the parameter.
|
| +
|
| +times01
|
| +
|
| + Basic test for the times(2) system call.
|
| +
|
| +times02
|
| +
|
| + Testcase to test that times() sets errno correctly
|
| +
|
| +times03
|
| +
|
| + Testcase to check the basic functionality of the times() system call.
|
| +
|
| +utime01
|
| +
|
| + Verify that the system call utime() successfully sets the modification
|
| + and access times of a file to the current time, if the times argument
|
| + is null, and the user ID of the process is "root".
|
| +
|
| +utime02
|
| +
|
| + Verify that the system call utime() successfully sets the modification
|
| + and access times of a file to the current time, under the following
|
| + constraints,
|
| + - The times argument is null.
|
| + - The user ID of the process is not "root".
|
| + - The file is owned by the user ID of the process.
|
| +
|
| +utime03
|
| +
|
| + Verify that the system call utime() successfully sets the modification
|
| + and access times of a file to the current time, under the following
|
| + constraints,
|
| + - The times argument is null.
|
| + - The user ID of the process is not "root".
|
| + - The file is not owned by the user ID of the process.
|
| + - The user ID of the process has write access to the file.
|
| +
|
| +
|
| +utime04
|
| +
|
| + Verify that the system call utime() successfully sets the modification
|
| + and access times of a file to the time specified by times argument, if
|
| + the times argument is not null, and the user ID of the process is "root".
|
| +
|
| +
|
| +utime05
|
| +
|
| + Verify that the system call utime() successfully sets the modification
|
| + and access times of a file to the value specified by the times argument
|
| + under the following constraints,
|
| + - The times argument is not null,
|
| + - The user ID of the process is not "root".
|
| + - The file is owned by the user ID of the process.
|
| +
|
| +
|
| +utime06
|
| +
|
| + 1. Verify that the system call utime() fails to set the modification
|
| + and access times of a file to the current time, under the following
|
| + constraints,
|
| + - The times argument is null.
|
| + - The user ID of the process is not "root".
|
| + - The file is not owned by the user ID of the process.
|
| + - The user ID of the process does not have write access to the
|
| + file.
|
| + 2. Verify that the system call utime() fails to set the modification
|
| + and access times of a file if the specified file doesn't exist.
|
| +
|
| +settimeofday01
|
| +
|
| + Testcase to check the basic functionality of settimeofday().
|
| +
|
| +
|
| +settimeofday02
|
| +
|
| + Testcase to check that settimeofday() sets errnos correctly.
|
| +
|
| +stime01
|
| +
|
| + Verify that the system call stime() successfully sets the system's idea
|
| + of data and time if invoked by "root" user.
|
| +
|
| +stime02
|
| +
|
| + Verify that the system call stime() fails to set the system's idea
|
| + of data and time if invoked by "non-root" user.
|
| +
|
| +gettimeofday01
|
| +
|
| + Testcase to check that gettimeofday(2) sets errno to EFAULT.
|
| +
|
| +
|
| +
|
| +alarm01
|
| +
|
| + Basic test for alarm(2).
|
| +
|
| +alarm02
|
| +
|
| + Boundary Value Test for alarm(2).
|
| +
|
| +alarm03
|
| +
|
| + Alarm(2) cleared by a fork.
|
| +
|
| +alarm04
|
| +
|
| + Check that when an alarm request is made, the signal SIGALRM is received
|
| + even after the process has done an exec().
|
| +
|
| +alarm05
|
| +
|
| + Check the functionality of the Alarm system call when the time input
|
| + parameter is non zero.
|
| +
|
| +alarm06
|
| +
|
| + Check the functionality of the Alarm system call when the time input
|
| + parameter is zero.
|
| +
|
| +alarm07
|
| +
|
| + Check the functionality of the alarm() when the time input
|
| + parameter is non-zero and the process does a fork.
|
| +
|
| +getegid01
|
| +
|
| + Basic test for getegid(2)
|
| +
|
| +
|
| +geteuid01
|
| +
|
| + Basic test for geteuid(2)
|
| +
|
| +
|
| +getgid01
|
| +
|
| + Basic test for getgid(2)
|
| +
|
| +getgid02
|
| +
|
| + Testcase to check the basic functionality of getgid().
|
| +
|
| +getgid03
|
| +
|
| + Testcase to check the basic functionality of getegid().
|
| +
|
| +
|
| +getpid01
|
| +
|
| + Basic test for getpid(2)
|
| +
|
| +
|
| +getpid02
|
| +
|
| + Verify that getpid() system call gets the process ID of the of the
|
| + calling process.
|
| +
|
| +
|
| +getppid01
|
| +
|
| + Testcase to check the basic functionality of the getppid() syscall.
|
| +
|
| +
|
| +getuid01
|
| +
|
| + Basic test for getuid(2)
|
| +
|
| +getuid02
|
| +
|
| + Testcase to check the basic functionality of the geteuid() system call.
|
| +
|
| +getuid03
|
| +
|
| + Testcase to check the basic functionality of the getuid() system call.
|
| +
|
| +nanosleep01
|
| +
|
| + Verify that nanosleep() will be successful to suspend the execution
|
| + of a process for a specified time.
|
| +
|
| +nanosleep02
|
| +
|
| + Verify that nanosleep() will be successful to suspend the execution
|
| + of a process, returns after the receipt of a signal and writes the
|
| + remaining sleep time into the structure.
|
| +
|
| +nanosleep03
|
| +
|
| + Verify that nanosleep() will fail to suspend the execution
|
| + of a process for a specified time if interrupted by a non-blocked signal.
|
| +
|
| +nanosleep04
|
| +
|
| + Verify that nanosleep() will fail to suspend the execution
|
| + of a process if the specified pause time is invalid.
|
| +
|
|
|