OLD | NEW |
(Empty) | |
| 1 personality01 |
| 2 Check that we can set the personality for a process. |
| 3 personality02 |
| 4 Check that we get EINVAL for a bad personality. |
| 5 exit01 |
| 6 Check that exit returns the correct values to the waiting parent |
| 7 exit02 |
| 8 Check that exit flushes output file buffers and closes files upon |
| 9 exiting |
| 10 wait02 |
| 11 Basic test for wait(2) system call. |
| 12 wait401 |
| 13 check that a call to wait4() correctly waits for a child |
| 14 process to exit |
| 15 wait402 |
| 16 check for ECHILD errno when using an illegal pid value |
| 17 |
| 18 waitpid01 |
| 19 Check that when a child kills itself by generating an alarm |
| 20 exception, the waiting parent is correctly notified. |
| 21 waitpid02 |
| 22 Check that when a child kills itself by generating an integer zero |
| 23 divide exception, the waiting parent is correctly notified. |
| 24 waitpid03 |
| 25 Check that parent waits until specific child has returned. |
| 26 waitpid04 |
| 27 test to check the error conditions in waitpid sys call |
| 28 waitpid05 |
| 29 Check that when a child kills itself with a kill statement after |
| 30 determining its process id by using getpid, the parent receives a |
| 31 correct report of the cause of its death. This also indirectly |
| 32 checks that getpid returns the correct process id. |
| 33 waitpid06 |
| 34 Tests to see if pid's returned from fork and waitpid are same. |
| 35 waitpid07 |
| 36 Tests to see if pid's returned from fork and waitpid are same. |
| 37 waitpid08 |
| 38 Tests to see if pid's returned from fork and waitpid are same |
| 39 waitpid09 |
| 40 Check ability of parent to wait until child returns, and that the |
| 41 child's process id is returned through the waitpid. Check that |
| 42 waitpid returns immediately if no child is present. |
| 43 waitpid10 |
| 44 Tests to see if pid's returned from fork and waitpid are same |
| 45 waitpid11 |
| 46 Tests to see if pid's returned from fork and waitpid are same |
| 47 waitpid12 |
| 48 Tests to see if pid's returned from fork and waitpid are same |
| 49 waitpid13 |
| 50 Tests to see if pid's returned from fork and waitpid are same |
| 51 fcntl01 |
| 52 Test F_DUPFD, F_SETFL cmds of fcntl |
| 53 fcntl02 |
| 54 Basic test for fcntl(2) using F_DUPFD argument. |
| 55 fcntl03 |
| 56 Basic test for fcntl(2) using F_GETFD argument. |
| 57 fcntl04 |
| 58 Basic test for fcntl(2) using F_GETFL argument. |
| 59 fcntl05 |
| 60 Basic test for fcntl(2) using F_GETLK argument. |
| 61 fcntl06 |
| 62 Error checking conditions for remote locking of regions of a file. |
| 63 fcntl07 |
| 64 Close-On-Exec functional test. |
| 65 fcntl07B |
| 66 Close-On-Exec of named pipe functional test. |
| 67 fcntl08 |
| 68 Basic test for fcntl(2) using F_SETFL argument. |
| 69 fcntl09 |
| 70 Basic test for fcntl(2) using F_SETLK argument. |
| 71 fcntl10 |
| 72 Basic test for fcntl(2) using F_SETLKW argument. |
| 73 fcntl11 |
| 74 Testcase to check locking of regions of a file |
| 75 |
| 76 fcntl12 |
| 77 |
| 78 Testcase to test that fcntl() sets EMFILE for F_DUPFD command. |
| 79 |
| 80 fcntl13 |
| 81 |
| 82 Testcase to test that fcntl() sets errno correctly. |
| 83 |
| 84 fcntl14 |
| 85 |
| 86 File locking test cases for fcntl. In Linux, S_ENFMT is not implemented |
| 87 in the kernel. However all standard Unix kernels define S_ENFMT as |
| 88 S_ISGID. So this test defines S_ENFMT as S_ISGID. |
| 89 |
| 90 fcntl15 |
| 91 |
| 92 Check that file locks are removed when file closed |
| 93 |
| 94 fcntl16 |
| 95 |
| 96 Additional file locking test cases for checking proper notification |
| 97 of processes on lock change |
| 98 |
| 99 fcntl17 |
| 100 |
| 101 Check deadlock detection for file locking |
| 102 |
| 103 fcntl18 |
| 104 |
| 105 Test to check the error conditions in fcntl system call |
| 106 |
| 107 fcntl19 |
| 108 |
| 109 Testcase to check locking of regions of a file |
| 110 |
| 111 fcntl20 |
| 112 |
| 113 Check locking of regions of a file |
| 114 |
| 115 fcntl21 |
| 116 |
| 117 Check locking of regions of a file |
| 118 |
| 119 dup01 |
| 120 |
| 121 Basic test for dup(2). |
| 122 |
| 123 dup02 |
| 124 |
| 125 Negative test for dup(2) with bad fd. |
| 126 |
| 127 dup03 |
| 128 |
| 129 Negative test for dup(2) (too many fds). |
| 130 |
| 131 dup04 |
| 132 |
| 133 Basic test for dup(2) of a system pipe descriptor. |
| 134 |
| 135 dup05 |
| 136 |
| 137 Basic test for dup(2) of a named pipe descriptor. |
| 138 |
| 139 dup201 |
| 140 |
| 141 Negative tests for dup2() with bad fd (EBADF), and for "too many |
| 142 open files" (EMFILE) |
| 143 |
| 144 dup202 |
| 145 |
| 146 Is the access mode the same for both file descriptors? |
| 147 0: read only ? "0444" |
| 148 1: write only ? "0222" |
| 149 2: read/write ? "0666" |
| 150 |
| 151 dup203 |
| 152 |
| 153 Testcase to check the basic functionality of dup2(). |
| 154 |
| 155 dup204 |
| 156 |
| 157 Testcase to check the basic functionality of dup2(2). |
| 158 |
| 159 |
| 160 msync01 |
| 161 |
| 162 Verify that, msync() succeeds, when the region to synchronize, is part |
| 163 of, or all of a mapped region. |
| 164 |
| 165 msync02 |
| 166 |
| 167 Verify that msync() succeeds when the region to synchronize is mapped |
| 168 shared and the flags argument is MS_INVALIDATE. |
| 169 |
| 170 msync03 |
| 171 |
| 172 Verify that, msync() fails, when the region to synchronize, is outside |
| 173 the address space of the process. |
| 174 |
| 175 msync04 |
| 176 |
| 177 Verify that, msync() fails, when the region to synchronize, is mapped |
| 178 but the flags argument is invalid. |
| 179 |
| 180 msync05 |
| 181 |
| 182 Verify that, msync() fails, when the region to synchronize, was not |
| 183 mapped. |
| 184 |
| 185 |
| 186 sendfile02 |
| 187 |
| 188 Testcase to test the basic functionality of the sendfile(2) system call. |
| 189 |
| 190 sendfile03 |
| 191 |
| 192 Testcase to test that sendfile(2) system call returns appropriate |
| 193 errnos on error. |
| 194 |
| 195 fork01 |
| 196 Basic test for fork(2). |
| 197 fork02 |
| 198 Test correct operation of fork: |
| 199 pid == 0 in child; |
| 200 pid > 0 in parent from wait; |
| 201 fork03 |
| 202 Check that child can use a large text space and do a large |
| 203 number of operations. |
| 204 fork04 |
| 205 Child inheritance of Environment Variables after fork(). |
| 206 fork05 |
| 207 Make sure LDT is propagated correctly |
| 208 fork06 |
| 209 Test that a process can fork children a large number of |
| 210 times in succession |
| 211 fork07 |
| 212 Check that all children inherit parent's file descriptor |
| 213 fork08 |
| 214 Check if the parent's file descriptors are affected by |
| 215 actions in the child; they should not be. |
| 216 fork09 |
| 217 Check that child has access to a full set of files. |
| 218 fork10 |
| 219 Check inheritance of file descriptor by children, they |
| 220 should all be referring to the same file. |
| 221 fork11 |
| 222 Test that parent gets a pid from each child when doing wait |
| 223 vfork01 |
| 224 Fork a process using vfork() and verify that, the attribute values like |
| 225 euid, ruid, suid, egid, rgid, sgid, umask, inode and device number of |
| 226 root and current working directories are same as that of the parent |
| 227 process. |
| 228 vfork02 |
| 229 Fork a process using vfork() and verify that, the pending signals in |
| 230 the parent are not pending in the child process. |
| 231 ioctl01 |
| 232 |
| 233 Testcase to check the errnos set by the ioctl(2) system call. |
| 234 |
| 235 ioctl02 |
| 236 |
| 237 Testcase to test the TCGETA, and TCSETA ioctl implementations for |
| 238 the tty driver |
| 239 |
| 240 sockioctl01 |
| 241 |
| 242 Verify that ioctl() on sockets returns the proper errno for various |
| 243 failure cases |
| 244 |
| 245 getitimer01 |
| 246 check that a correct call to getitimer() succeeds |
| 247 |
| 248 |
| 249 getitimer02 |
| 250 check that a getitimer() call fails as expected |
| 251 with an incorrect second argument. |
| 252 |
| 253 getitimer03 |
| 254 check that a getitimer() call fails as expected |
| 255 with an incorrect first argument. |
| 256 |
| 257 setitimer01 |
| 258 check that a reasonable setitimer() call succeeds. |
| 259 |
| 260 |
| 261 setitimer02 |
| 262 check that a setitimer() call fails as expected |
| 263 with incorrect values. |
| 264 |
| 265 setitimer03 |
| 266 check that a setitimer() call fails as expected |
| 267 with incorrect values. |
| 268 |
| 269 float_trigo |
| 270 increase CPUs workload - verify that results of some math functions are
stable |
| 271 trigonometric (acos, asin, atan, atan2, cos, sin, tan), |
| 272 hyperbolic (cosh, sinh, tanh), |
| 273 |
| 274 float_exp_log |
| 275 increase CPUs workload - verify that results of some math functions are
stable |
| 276 exponential and logarithmic functions (exp, log, log10), |
| 277 Functions that manipulate floating-point numbers (modf, ldexp, frexp), |
| 278 Euclidean distance function (hypot), |
| 279 |
| 280 float_bessel |
| 281 increase CPUs workload - verify that results of some math functions are
stable |
| 282 Bessel (j0, j1, y0, y1), |
| 283 Computes the natural logarithm of the gamma function (lgamma), |
| 284 |
| 285 fload_power |
| 286 increase CPUs workload - verify that results of some math functions are
stable |
| 287 Computes sqrt, power, fmod |
| 288 |
| 289 float_iperb |
| 290 increase CPUs workload - verify that results of some math functions are
stable |
| 291 pth_str01 |
| 292 |
| 293 Creates a tree of threads |
| 294 |
| 295 pth_str02 |
| 296 |
| 297 Creates n threads |
| 298 |
| 299 pth_str03 |
| 300 |
| 301 Creates a tree of threads does calculations, and |
| 302 returns result to parent |
| 303 |
| 304 |
| 305 asyncio02 |
| 306 |
| 307 Write/close flushes data to the file. |
| 308 |
| 309 |
| 310 fpathconf |
| 311 |
| 312 Basic test for fpathconf(2) |
| 313 |
| 314 gethostid01 |
| 315 |
| 316 Basic test for gethostid(2) |
| 317 |
| 318 |
| 319 pathconf01 |
| 320 |
| 321 Basic test for pathconf(2) |
| 322 |
| 323 setpgrp01 |
| 324 |
| 325 Basic test for the setpgrp(2) system call. |
| 326 |
| 327 setpgrp02 |
| 328 |
| 329 Testcase to check the basic functionality of the setpgrp(2) syscall. |
| 330 |
| 331 |
| 332 ulimit01 |
| 333 |
| 334 Basic test for the ulimit(2) system call. |
| 335 |
| 336 mmstress |
| 337 |
| 338 Performs General Stress with Race conditions |
| 339 |
| 340 mmap1 |
| 341 |
| 342 Test the LINUX memory manager. The program is aimed at |
| 343 stressing the memory manager by simultaneous map/unmap/read |
| 344 by light weight processes, the test is scheduled to run for |
| 345 a minimum of 24 hours. |
| 346 |
| 347 mmap2 |
| 348 |
| 349 Test the LINUX memory manager. The program is aimed at |
| 350 stressing the memory manager by repeated map/write/unmap of a |
| 351 of a large gb size file. |
| 352 |
| 353 mmap3 |
| 354 |
| 355 Test the LINUX memory manager. The program is aimed at |
| 356 stressing the memory manager by repeated map/write/unmap |
| 357 of file/memory of random size (maximum 1GB) this is done by |
| 358 multiple processes. |
| 359 |
| 360 mmap001 |
| 361 |
| 362 Tests mmapping a big file and writing it once |
| 363 |
| 364 mmap01 |
| 365 |
| 366 Verify that, mmap() succeeds when used to map a file where size of the |
| 367 file is not a multiple of the page size, the memory area beyond the end |
| 368 of the file to the end of the page is accessible. Also, verify that |
| 369 this area is all zeroed and the modifications done to this area are |
| 370 not written to the file. |
| 371 |
| 372 mmap02 |
| 373 |
| 374 Call mmap() with prot parameter set to PROT_READ and with the file |
| 375 descriptor being open for read, to map a file creating mapped memory |
| 376 with read access. The minimum file permissions should be 0444. |
| 377 |
| 378 mmap03 |
| 379 |
| 380 Call mmap() to map a file creating a mapped region with execute access |
| 381 under the following conditions - |
| 382 - The prot parameter is set to PROT_EXE |
| 383 - The file descriptor is open for read |
| 384 - The file being mapped has execute permission bit set. |
| 385 - The minimum file permissions should be 0555. |
| 386 |
| 387 The call should succeed to map the file creating mapped memory with the |
| 388 required attributes. |
| 389 |
| 390 mmap04 |
| 391 |
| 392 Call mmap() to map a file creating a mapped region with read/exec access |
| 393 under the following conditions - |
| 394 - The prot parameter is set to PROT_READ|PROT_EXEC |
| 395 - The file descriptor is open for read |
| 396 - The file being mapped has read and execute permission bit set. |
| 397 - The minimum file permissions should be 0555. |
| 398 |
| 399 The call should succeed to map the file creating mapped memory with the |
| 400 required attributes. |
| 401 |
| 402 |
| 403 mmap05 |
| 404 |
| 405 Call mmap() to map a file creating mapped memory with no access under |
| 406 the following conditions - |
| 407 - The prot parameter is set to PROT_NONE |
| 408 - The file descriptor is open for read(any mode other than write) |
| 409 - The minimum file permissions should be 0444. |
| 410 |
| 411 The call should succeed to map the file creating mapped memory with the |
| 412 required attributes. |
| 413 |
| 414 mmap06 |
| 415 |
| 416 Call mmap() to map a file creating a mapped region with read access |
| 417 under the following conditions - |
| 418 - The prot parameter is set to PROT_READ |
| 419 - The file descriptor is open for writing. |
| 420 |
| 421 The call should fail to map the file. |
| 422 |
| 423 |
| 424 mmap07 |
| 425 |
| 426 Call mmap() to map a file creating a mapped region with read access |
| 427 under the following conditions - |
| 428 - The prot parameter is set to PROT_WRITE |
| 429 - The file descriptor is open for writing. |
| 430 - The flags parameter has MAP_PRIVATE set. |
| 431 |
| 432 The call should fail to map the file. |
| 433 |
| 434 mmap08 |
| 435 |
| 436 Verify that mmap() fails to map a file creating a mapped region |
| 437 when the file specified by file descriptor is not valid. |
| 438 |
| 439 |
| 440 mremap01 |
| 441 |
| 442 Verify that, mremap() succeeds when used to expand the existing |
| 443 virtual memory mapped region to the requested size where the |
| 444 virtual memory area was previously mapped to a file using mmap(). |
| 445 |
| 446 mremap02 |
| 447 |
| 448 Verify that, |
| 449 mremap() fails when used to expand the existing virtual memory mapped |
| 450 region to the requested size, if the virtual memory area previously |
| 451 mapped was not page aligned or invalid argument specified. |
| 452 |
| 453 mremap03 |
| 454 |
| 455 Verify that, |
| 456 mremap() fails when used to expand the existing virtual memory mapped |
| 457 region to the requested size, if there already exists mappings that |
| 458 cover the whole address space requested or the old address specified was |
| 459 not mapped. |
| 460 |
| 461 mremap04 |
| 462 |
| 463 Verify that, |
| 464 mremap() fails when used to expand the existing virtual memory mapped |
| 465 region to the requested size, if the memory area cannot be expanded at |
| 466 the current virtual address and MREMAP_MAYMOVE flag not set. |
| 467 |
| 468 munmap01 |
| 469 |
| 470 Verify that, munmap call will succeed to unmap a mapped file or |
| 471 anonymous shared memory region from the calling process's address space |
| 472 and after successful completion of munmap, the unmapped region is no |
| 473 longer accessible. |
| 474 |
| 475 munmap02 |
| 476 |
| 477 Verify that, munmap call will succeed to unmap a mapped file or |
| 478 anonymous shared memory region from the calling process's address space |
| 479 if the region specified by the address and the length is part or all of |
| 480 the mapped region. |
| 481 |
| 482 munmap03 |
| 483 |
| 484 Verify that, munmap call will fail to unmap a mapped file or anonymous |
| 485 shared memory region from the calling process's address space if the |
| 486 address and the length of the region to be unmapped points outside the |
| 487 calling process's address space |
| 488 |
| 489 brk01 |
| 490 Test the basic functionality of brk. |
| 491 |
| 492 sbrk01 |
| 493 Basic test for the sbrk(2) system call. |
| 494 |
| 495 |
| 496 mprotect01 |
| 497 |
| 498 Testcase to check the error conditions for mprotect(2) |
| 499 |
| 500 mprotect02 |
| 501 |
| 502 Testcase to check the mprotect(2) system call. |
| 503 |
| 504 mprotect03 |
| 505 |
| 506 Testcase to check the mprotect(2) system call. |
| 507 |
| 508 msgctl01 |
| 509 create a message queue, then issue the IPC_STAT command |
| 510 and RMID commands to test the functionality |
| 511 |
| 512 |
| 513 msgctl02 |
| 514 create a message queue, then issue the IPC_SET command |
| 515 to lower the msg_qbytes value. |
| 516 |
| 517 |
| 518 msgctl03 |
| 519 create a message queue, then issue the IPC_RMID command |
| 520 |
| 521 |
| 522 |
| 523 msgctl04 |
| 524 test for EACCES, EFAULT and EINVAL errors using |
| 525 a variety of incorrect calls. |
| 526 |
| 527 |
| 528 msgctl05 |
| 529 test for EPERM error |
| 530 |
| 531 |
| 532 |
| 533 msgget01 |
| 534 create a message queue, write a message to it and |
| 535 read it back. |
| 536 |
| 537 |
| 538 msgget02 |
| 539 test for EEXIST and ENOENT errors |
| 540 |
| 541 |
| 542 msgget03 |
| 543 test for an ENOSPC error by using up all available |
| 544 message queues. |
| 545 |
| 546 msgget04 |
| 547 test for an EACCES error by creating a message queue |
| 548 with no read or write permission and then attempting |
| 549 to access it with various permissions. |
| 550 |
| 551 msgrcv01 |
| 552 test that msgrcv() receives the expected message |
| 553 |
| 554 msgrcv02 |
| 555 test for EACCES and EFAULT errors |
| 556 |
| 557 msgrcv03 |
| 558 test for EINVAL error |
| 559 |
| 560 msgrcv04 |
| 561 test for E2BIG and ENOMSG errors |
| 562 |
| 563 msgrcv05 |
| 564 test for EINTR error |
| 565 |
| 566 msgrcv06 |
| 567 test for EIDRM error |
| 568 |
| 569 msgsnd01 |
| 570 test that msgsnd() enqueues a message correctly |
| 571 |
| 572 msgsnd02 |
| 573 test for EACCES and EFAULT errors |
| 574 |
| 575 msgsnd03 |
| 576 test for EINVAL error |
| 577 |
| 578 msgsnd04 |
| 579 test for EAGAIN error |
| 580 |
| 581 msgsnd05 |
| 582 test for EINTR error |
| 583 |
| 584 |
| 585 msgsnd06 |
| 586 test for EIDRM error |
| 587 |
| 588 link02 |
| 589 |
| 590 Basic test for link(2) |
| 591 |
| 592 link03 |
| 593 |
| 594 Multi links tests |
| 595 |
| 596 link04 |
| 597 |
| 598 Negative test cases for link(2) |
| 599 |
| 600 link05 |
| 601 |
| 602 Multi links (EMLINK) negative test |
| 603 |
| 604 readlink01 |
| 605 |
| 606 Verify that, readlink will succeed to read the contents of the symbolic |
| 607 link created the process. |
| 608 |
| 609 readlink02 |
| 610 |
| 611 Basic test for the readlink(2) system call |
| 612 |
| 613 readlink03 |
| 614 |
| 615 Verify that, |
| 616 1) readlink(2) returns -1 and sets errno to EACCES if search/write |
| 617 permission is denied in the directory where the symbolic link |
| 618 resides. |
| 619 2) readlink(2) returns -1 and sets errno to EINVAL if the buffer size |
| 620 is not positive. |
| 621 3) readlink(2) returns -1 and sets errno to EINVAL if the specified |
| 622 file is not a symbolic link file. |
| 623 4) readlink(2) returns -1 and sets errno to ENAMETOOLONG if the |
| 624 pathname component of symbolic link is too long (ie, > PATH_MAX). |
| 625 5) readlink(2) returns -1 and sets errno to ENOENT if the component of |
| 626 symbolic link points to an empty string. |
| 627 |
| 628 readlink04 |
| 629 |
| 630 Verify that, readlink call will succeed to read the contents of the |
| 631 symbolic link if invoked by non-root user who is not the owner of the |
| 632 symbolic link. |
| 633 |
| 634 |
| 635 symlink01 |
| 636 |
| 637 Test of various file function calls, such as rename or open, on a symbol
ic |
| 638 link file. |
| 639 |
| 640 symlink02 |
| 641 |
| 642 Basic test for the symlink(2) system call. |
| 643 |
| 644 symlink03 |
| 645 |
| 646 Verify that, |
| 647 1) symlink(2) returns -1 and sets errno to EACCES if search/write |
| 648 permission is denied in the directory where the symbolic link is |
| 649 being created. |
| 650 2) symlink(2) returns -1 and sets errno to EEXIST if the specified |
| 651 symbolic link already exists. |
| 652 3) symlink(2) returns -1 and sets errno to EFAULT if the specified |
| 653 file or symbolic link points to invalid address. |
| 654 4) symlink(2) returns -1 and sets errno to ENAMETOOLONG if the |
| 655 pathname component of symbolic link is too long (ie, > PATH_MAX). |
| 656 5) symlink(2) returns -1 and sets errno to ENOTDIR if the directory |
| 657 component in pathname of symbolic link is not a directory. |
| 658 6) symlink(2) returns -1 and sets errno to ENOENT if the component of |
| 659 symbolic link points to an empty string. |
| 660 |
| 661 symlink04 |
| 662 |
| 663 Verify that, symlink will succeed to create a symbolic link of an existi
ng |
| 664 object name path. |
| 665 |
| 666 |
| 667 symlink05 |
| 668 |
| 669 Verify that, symlink will succeed to create a symbolic link of an |
| 670 non-existing object name path. |
| 671 |
| 672 |
| 673 unlink05 |
| 674 |
| 675 Basic test for the unlink(2) system call. |
| 676 |
| 677 unlink06 |
| 678 |
| 679 Test for the unlink(2) system call of a FIFO. |
| 680 |
| 681 unlink07 |
| 682 |
| 683 Tests for error handling for the unlink(2) system call. |
| 684 |
| 685 unlink08 |
| 686 |
| 687 More tests for error handling for the unlink(2) system call. |
| 688 |
| 689 |
| 690 linktest |
| 691 |
| 692 Regression test for max links per file |
| 693 |
| 694 rename01 |
| 695 |
| 696 This test will verify the rename(2) syscall basic functionality. |
| 697 Verify rename() works when the "new" file or directory does not exist. |
| 698 |
| 699 rename02 |
| 700 |
| 701 Basic test for the rename(2) system call |
| 702 |
| 703 rename03 |
| 704 |
| 705 This test will verify that rename(2) functions correctly |
| 706 when the "new" file or directory exists |
| 707 |
| 708 rename04 |
| 709 |
| 710 This test will verify that rename(2) failed when newpath is |
| 711 a non-empty directory and return EEXIST or ENOTEMPTY |
| 712 |
| 713 rename05 |
| 714 |
| 715 This test will verify that rename(2) fails with EISDIR |
| 716 |
| 717 rename06 |
| 718 |
| 719 This test will verify that rename(2) failed in EINVAL |
| 720 |
| 721 rename07 |
| 722 |
| 723 This test will verify that rename(2) failed in ENOTDIR |
| 724 |
| 725 rename08 |
| 726 |
| 727 This test will verify that rename(2) syscall failed in EFAULT |
| 728 |
| 729 rename09 |
| 730 |
| 731 check rename() fails with EACCES |
| 732 |
| 733 rename10 |
| 734 |
| 735 This test will verify that rename(2) syscall fails with ENAMETOOLONG |
| 736 and ENOENT |
| 737 |
| 738 rename11 |
| 739 |
| 740 This test will verify that rename(2) failed in EBUSY |
| 741 |
| 742 rename12 |
| 743 |
| 744 check rename() fails with EPERM |
| 745 |
| 746 rename13 |
| 747 |
| 748 Verify rename() return successfully and performs no other action |
| 749 when "old" file and "new" file link to the same file. |
| 750 |
| 751 rmdir01 |
| 752 |
| 753 This test will verify that rmdir(2) syscall basic functionality. |
| 754 verify rmdir(2) returns a value of 0 and the directory being |
| 755 removed |
| 756 |
| 757 rmdir02 |
| 758 |
| 759 This test will verify that rmdir(2) fail in |
| 760 1. ENOTEMPTY |
| 761 2. EBUSY |
| 762 3. ENAMETOOLONG |
| 763 4. ENOENT |
| 764 5. ENOTDIR |
| 765 6. EFAULT |
| 766 7. EFAULT |
| 767 |
| 768 rmdir03 |
| 769 |
| 770 check rmdir() fails with EPERM or EACCES |
| 771 |
| 772 rmdir04 |
| 773 |
| 774 Basic test for the rmdir(2) system call |
| 775 |
| 776 rmdir05 |
| 777 |
| 778 Verify that rmdir(2) returns a value of -1 and sets errno to indicate th
e error. |
| 779 |
| 780 |
| 781 |
| 782 mkdir01 |
| 783 |
| 784 Basic errno test for mkdir(2) |
| 785 |
| 786 mkdir02 |
| 787 |
| 788 This test will verify that new directory created |
| 789 by mkdir(2) inherits the group ID from the parent |
| 790 directory and S_ISGID bit, if the S_ISGID bit is set |
| 791 in the parent directory. |
| 792 |
| 793 mkdir03 |
| 794 |
| 795 Check mkdir() with various error conditions that should produce |
| 796 EFAULT, ENAMETOOLONG, EEXIST, ENOENT and ENOTDIR |
| 797 |
| 798 mkdir04 |
| 799 |
| 800 Attempt to create a directory in a directory having no permissions. |
| 801 |
| 802 mkdir05 |
| 803 |
| 804 This test will verify the mkdir(2) syscall basic functionality |
| 805 |
| 806 mkdir08 |
| 807 |
| 808 Basic test for mkdir(2) |
| 809 |
| 810 |
| 811 mknod01 |
| 812 |
| 813 Basic test for mknod(2) |
| 814 |
| 815 mknod02 |
| 816 |
| 817 Verify that mknod(2) succeeds when used to create a filesystem |
| 818 node with set group-ID bit set on a directory without set group-ID bit s
et. |
| 819 The node created should have set group-ID bit set and its gid should be |
| 820 equal to that of its parent directory. |
| 821 |
| 822 mknod03 |
| 823 |
| 824 Verify that mknod(2) succeeds when used to create a filesystem |
| 825 node with set group-ID bit set on a directory with set group-ID bit set. |
| 826 The node created should have set group-ID bit set and its gid should be |
| 827 equal to the effective gid of the process. |
| 828 |
| 829 mknod04 |
| 830 |
| 831 Verify that mknod(2) succeeds when used to create a filesystem |
| 832 node on a directory with set group-ID bit set. |
| 833 The node created should not have group-ID bit set and its gid should be |
| 834 equal to the effective gid of the process. |
| 835 |
| 836 mknod05 |
| 837 |
| 838 Verify that mknod(2) succeeds when used by root to create a filesystem |
| 839 node with set group-ID bit set on a directory with set group-ID bit set. |
| 840 The node created should have set group-ID bit set and its gid should be |
| 841 equal to that of its parent directory. |
| 842 |
| 843 |
| 844 mknod06 |
| 845 |
| 846 Verify that, |
| 847 1) mknod(2) returns -1 and sets errno to EEXIST if specified path |
| 848 already exists. |
| 849 2) mknod(2) returns -1 and sets errno to EFAULT if pathname points |
| 850 outside user's accessible address space. |
| 851 3) mknod(2) returns -1 and sets errno to ENOENT if the directory |
| 852 component in pathname does not exist. |
| 853 4) mknod(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 854 component was too long. |
| 855 5) mknod(2) returns -1 and sets errno to ENOTDIR if the directory |
| 856 component in pathname is not a directory. |
| 857 |
| 858 mknod07 |
| 859 |
| 860 Verify that, |
| 861 1) mknod(2) returns -1 and sets errno to EPERM if the process id of |
| 862 the caller is not super-user. |
| 863 2) mknod(2) returns -1 and sets errno to EACCES if parent directory |
| 864 does not allow write permission to the process. |
| 865 |
| 866 mknod08 |
| 867 |
| 868 Verify that mknod(2) succeeds when used to create a filesystem |
| 869 node on a directory without set group-ID bit set. The node created |
| 870 should not have set group-ID bit set and its gid should be equal to that |
| 871 of its parent directory. |
| 872 |
| 873 |
| 874 |
| 875 |
| 876 access01 |
| 877 |
| 878 Basic test for access(2) using F_OK, R_OK, W_OK, and X_OK arguments. |
| 879 |
| 880 access02 |
| 881 |
| 882 Verify that access() succeeds to check the read/write/execute permission
s |
| 883 on a file if the mode argument passed was R_OK/W_OK/X_OK. |
| 884 |
| 885 Also verify that, access() succeeds to test the accessibility of the fil
e |
| 886 referred to by symbolic link if the pathname points to a symbolic link. |
| 887 |
| 888 access03 |
| 889 |
| 890 EFAULT error testing for access(2). |
| 891 |
| 892 access04 |
| 893 |
| 894 Verify that, |
| 895 1. access() fails with -1 return value and sets errno to EACCES |
| 896 if the permission bits of the file mode do not permit the |
| 897 requested (Read/Write/Execute) access. |
| 898 2. access() fails with -1 return value and sets errno to EINVAL |
| 899 if the specified access mode argument is invalid. |
| 900 3. access() fails with -1 return value and sets errno to EFAULT |
| 901 if the pathname points outside allocate address space for the |
| 902 process. |
| 903 4. access() fails with -1 return value and sets errno to ENOENT |
| 904 if the specified file doesn't exist (or pathname is NULL). |
| 905 5. access() fails with -1 return value and sets errno to ENAMETOOLONG |
| 906 if the pathname size is > PATH_MAX characters. |
| 907 |
| 908 access05 |
| 909 |
| 910 Verify that access() succeeds to check the existence of a file if |
| 911 search access is permitted on the pathname of the specified file. |
| 912 |
| 913 access06 |
| 914 |
| 915 EFAULT error testing for access(2). |
| 916 |
| 917 chroot01 |
| 918 |
| 919 Testcase to check the whether chroot sets errno to EPERM. |
| 920 |
| 921 chroot02 |
| 922 |
| 923 Test functionality of chroot(2) |
| 924 |
| 925 chroot03 |
| 926 |
| 927 Testcase to test whether chroot(2) sets errno correctly. |
| 928 |
| 929 pipeio |
| 930 |
| 931 This tool can be used to beat on system or named pipes. |
| 932 See the help() function below for user information. |
| 933 |
| 934 pipe01 |
| 935 |
| 936 Testcase to check the basic functionality of the pipe(2) syscall: |
| 937 Check that both ends of the pipe (both file descriptors) are |
| 938 available to a process opening the pipe. |
| 939 |
| 940 pipe05 |
| 941 |
| 942 Check what happens when pipe is passed a bad file descriptor. |
| 943 |
| 944 pipe06 |
| 945 |
| 946 Check what happens when the system runs out of pipes. |
| 947 |
| 948 pipe08 |
| 949 |
| 950 Check that a SIGPIPE signal is generated when a write is |
| 951 attempted on an empty pipe. |
| 952 |
| 953 pipe09 |
| 954 |
| 955 Check that two processes can use the same pipe at the same time. |
| 956 |
| 957 pipe10 |
| 958 |
| 959 Check that parent can open a pipe and have a child read from it |
| 960 |
| 961 pipe11 |
| 962 |
| 963 Check if many children can read what is written to a pipe by the |
| 964 parent. |
| 965 |
| 966 |
| 967 sem01 |
| 968 |
| 969 Creates a semaphore and two processes. The processes |
| 970 each go through a loop where they semdown, delay for a |
| 971 random amount of time, and semup, so they will almost |
| 972 always be fighting for control of the semaphore. |
| 973 |
| 974 sem02 |
| 975 The application creates several threads using pthread_create(). |
| 976 One thread performs a semop() with the SEM_UNDO flag set. The |
| 977 change in semaphore value performed by that semop should be |
| 978 "undone" only when the last pthread exits. |
| 979 |
| 980 |
| 981 semctl01 |
| 982 |
| 983 test the 10 possible semctl() commands |
| 984 |
| 985 semctl02 |
| 986 |
| 987 test for EACCES error |
| 988 |
| 989 semctl03 |
| 990 |
| 991 test for EINVAL and EFAULT errors |
| 992 |
| 993 semctl04 |
| 994 |
| 995 test for EPERM error |
| 996 |
| 997 |
| 998 semctl05 |
| 999 |
| 1000 test for ERANGE error |
| 1001 |
| 1002 semget01 |
| 1003 |
| 1004 test that semget() correctly creates a semaphore set |
| 1005 |
| 1006 semget02 |
| 1007 |
| 1008 test for EACCES and EEXIST errors |
| 1009 |
| 1010 semget03 |
| 1011 |
| 1012 test for ENOENT error |
| 1013 |
| 1014 semget05 |
| 1015 |
| 1016 test for ENOSPC error |
| 1017 |
| 1018 semget06 |
| 1019 |
| 1020 test for EINVAL error |
| 1021 |
| 1022 semop01 |
| 1023 |
| 1024 test that semop() basic functionality is correct |
| 1025 |
| 1026 semop02 |
| 1027 |
| 1028 test for E2BIG, EACCES, EFAULT and EINVAL errors |
| 1029 |
| 1030 semop03 |
| 1031 |
| 1032 test for EFBIG error |
| 1033 |
| 1034 semop04 |
| 1035 |
| 1036 test for EAGAIN error |
| 1037 |
| 1038 semop05 |
| 1039 |
| 1040 test for EINTR and EIDRM errors |
| 1041 |
| 1042 |
| 1043 |
| 1044 msgctl01 |
| 1045 create a message queue, then issue the IPC_STAT command |
| 1046 and RMID commands to test the functionality |
| 1047 |
| 1048 |
| 1049 msgctl02 |
| 1050 create a message queue, then issue the IPC_SET command |
| 1051 to lower the msg_qbytes value. |
| 1052 |
| 1053 |
| 1054 msgctl03 |
| 1055 create a message queue, then issue the IPC_RMID command |
| 1056 |
| 1057 |
| 1058 |
| 1059 msgctl04 |
| 1060 test for EACCES, EFAULT and EINVAL errors using |
| 1061 a variety of incorrect calls. |
| 1062 |
| 1063 |
| 1064 msgctl05 |
| 1065 test for EPERM error |
| 1066 |
| 1067 |
| 1068 |
| 1069 msgget01 |
| 1070 create a message queue, write a message to it and |
| 1071 read it back. |
| 1072 |
| 1073 |
| 1074 msgget02 |
| 1075 test for EEXIST and ENOENT errors |
| 1076 |
| 1077 |
| 1078 msgget03 |
| 1079 test for an ENOSPC error by using up all available |
| 1080 message queues. |
| 1081 |
| 1082 msgget04 |
| 1083 test for an EACCES error by creating a message queue |
| 1084 with no read or write permission and then attempting |
| 1085 to access it with various permissions. |
| 1086 |
| 1087 msgrcv01 |
| 1088 test that msgrcv() receives the expected message |
| 1089 |
| 1090 msgrcv02 |
| 1091 test for EACCES and EFAULT errors |
| 1092 |
| 1093 msgrcv03 |
| 1094 test for EINVAL error |
| 1095 |
| 1096 msgrcv04 |
| 1097 test for E2BIG and ENOMSG errors |
| 1098 |
| 1099 msgrcv05 |
| 1100 test for EINTR error |
| 1101 |
| 1102 msgrcv06 |
| 1103 test for EIDRM error |
| 1104 |
| 1105 msgsnd01 |
| 1106 test that msgsnd() enqueues a message correctly |
| 1107 |
| 1108 msgsnd02 |
| 1109 test for EACCES and EFAULT errors |
| 1110 |
| 1111 msgsnd03 |
| 1112 test for EINVAL error |
| 1113 |
| 1114 msgsnd04 |
| 1115 test for EAGAIN error |
| 1116 |
| 1117 msgsnd05 |
| 1118 test for EINTR error |
| 1119 |
| 1120 |
| 1121 msgsnd06 |
| 1122 test for EIDRM error |
| 1123 |
| 1124 shmat01 |
| 1125 test that shmat() works correctly |
| 1126 |
| 1127 shmat02 |
| 1128 check for EINVAL and EACCES errors |
| 1129 |
| 1130 |
| 1131 shmat03 |
| 1132 test for EACCES error |
| 1133 |
| 1134 |
| 1135 shmctl01 |
| 1136 test the IPC_STAT, IPC_SET and IPC_RMID commands as |
| 1137 they are used with shmctl() |
| 1138 |
| 1139 |
| 1140 shmctl02 |
| 1141 check for EACCES, EFAULT and EINVAL errors |
| 1142 |
| 1143 |
| 1144 shmctl03 |
| 1145 check for EACCES, and EPERM errors |
| 1146 |
| 1147 |
| 1148 shmdt01 |
| 1149 check that shared memory is detached correctly |
| 1150 |
| 1151 |
| 1152 shmdt02 |
| 1153 check for EINVAL error |
| 1154 |
| 1155 |
| 1156 shmget01 |
| 1157 test that shmget() correctly creates a shared memory segment |
| 1158 |
| 1159 |
| 1160 shmget02 |
| 1161 check for ENOENT, EEXIST and EINVAL errors |
| 1162 |
| 1163 |
| 1164 shmget03 |
| 1165 test for ENOSPC error |
| 1166 |
| 1167 |
| 1168 shmget04 |
| 1169 test for EACCES error |
| 1170 |
| 1171 |
| 1172 shmget05 |
| 1173 test for EACCES error |
| 1174 |
| 1175 openfile |
| 1176 |
| 1177 Creates files and opens simultaneously |
| 1178 |
| 1179 open01 |
| 1180 |
| 1181 Open a file with oflag = O_CREAT set, does it set the sticky bit off? |
| 1182 |
| 1183 Open "/tmp" with O_DIRECTORY, does it set the S_IFDIR bit on? |
| 1184 |
| 1185 open02 |
| 1186 |
| 1187 Test if open without O_CREAT returns -1 if a file does not exist. |
| 1188 |
| 1189 open03 |
| 1190 |
| 1191 Basic test for open(2) |
| 1192 |
| 1193 open04 |
| 1194 |
| 1195 Testcase to check that open(2) sets EMFILE if a process opens files |
| 1196 more than its descriptor size |
| 1197 |
| 1198 open05 |
| 1199 |
| 1200 Testcase to check open(2) sets errno to EACCES correctly. |
| 1201 |
| 1202 open06 |
| 1203 |
| 1204 Testcase to check open(2) sets errno to ENXIO correctly. |
| 1205 |
| 1206 open07 |
| 1207 |
| 1208 Test the open(2) system call to ensure that it sets ELOOP correctly. |
| 1209 |
| 1210 open08 |
| 1211 |
| 1212 Check for the following errors: |
| 1213 1. EEXIST |
| 1214 2. EISDIR |
| 1215 3. ENOTDIR |
| 1216 4. ENAMETOOLONG |
| 1217 5. EFAULT |
| 1218 6. ETXTBSY |
| 1219 |
| 1220 |
| 1221 openfile |
| 1222 |
| 1223 Creates files and opens simultaneously |
| 1224 |
| 1225 |
| 1226 chdir01 |
| 1227 |
| 1228 Check proper operation of chdir(): tests whether the |
| 1229 system call can it change the current, working directory, and find a |
| 1230 file there? Will it fail on a non-directory entry ? |
| 1231 |
| 1232 chdir02 |
| 1233 |
| 1234 Basic test for chdir(2). |
| 1235 |
| 1236 chdir03 |
| 1237 |
| 1238 Testcase for testing that chdir(2) sets EACCES errno |
| 1239 |
| 1240 chdir04 |
| 1241 |
| 1242 Testcase to test whether chdir(2) sets errno correctly. |
| 1243 |
| 1244 |
| 1245 chmod01 |
| 1246 |
| 1247 Verify that, chmod(2) succeeds when used to change the mode permissions |
| 1248 of a file. |
| 1249 |
| 1250 chmod02 |
| 1251 |
| 1252 Basic test for chmod(2). |
| 1253 |
| 1254 chmod03 |
| 1255 |
| 1256 Verify that, chmod(2) will succeed to change the mode of a file |
| 1257 and set the sticky bit on it if invoked by non-root (uid != 0) |
| 1258 process with the following constraints, |
| 1259 - the process is the owner of the file. |
| 1260 - the effective group ID or one of the supplementary group ID's of the |
| 1261 process is equal to the group ID of the file. |
| 1262 |
| 1263 chmod04 |
| 1264 |
| 1265 Verify that, chmod(2) will succeed to change the mode of a directory |
| 1266 and set the sticky bit on it if invoked by non-root (uid != 0) process |
| 1267 with the following constraints, |
| 1268 - the process is the owner of the directory. |
| 1269 - the effective group ID or one of the supplementary group ID's of the |
| 1270 process is equal to the group ID of the directory. |
| 1271 |
| 1272 chmod05 |
| 1273 |
| 1274 Verify that, chmod(2) will succeed to change the mode of a directory |
| 1275 but fails to set the setgid bit on it if invoked by non-root (uid != 0) |
| 1276 process with the following constraints, |
| 1277 - the process is the owner of the directory. |
| 1278 - the effective group ID or one of the supplementary group ID's of the |
| 1279 process is not equal to the group ID of the directory. |
| 1280 |
| 1281 chmod06 |
| 1282 |
| 1283 Verify that, |
| 1284 1) chmod(2) returns -1 and sets errno to EPERM if the effective user id |
| 1285 of process does not match the owner of the file and the process is |
| 1286 not super user. |
| 1287 2) chmod(2) returns -1 and sets errno to EACCES if search permission is |
| 1288 denied on a component of the path prefix. |
| 1289 3) chmod(2) returns -1 and sets errno to EFAULT if pathname points |
| 1290 outside user's accessible address space. |
| 1291 4) chmod(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 1292 component is too long. |
| 1293 5) chmod(2) returns -1 and sets errno to ENOTDIR if the directory |
| 1294 component in pathname is not a directory. |
| 1295 6) chmod(2) returns -1 and sets errno to ENOENT if the specified file |
| 1296 does not exists. |
| 1297 |
| 1298 chmod07 |
| 1299 |
| 1300 Verify that, chmod(2) will succeed to change the mode of a file/director
y |
| 1301 and sets the sticky bit on it if invoked by root (uid = 0) process with |
| 1302 the following constraints, |
| 1303 - the process is not the owner of the file/directory. |
| 1304 - the effective group ID or one of the supplementary group ID's of the |
| 1305 process is equal to the group ID of the file/directory. |
| 1306 |
| 1307 |
| 1308 chown01 |
| 1309 |
| 1310 Basic test for chown(2). |
| 1311 |
| 1312 chown02 |
| 1313 |
| 1314 Verify that, when chown(2) invoked by super-user to change the owner and |
| 1315 group of a file specified by path to any numeric owner(uid)/group(gid) |
| 1316 values, |
| 1317 - clears setuid and setgid bits set on an executable file. |
| 1318 - preserves setgid bit set on a non-group-executable file. |
| 1319 |
| 1320 chown03 |
| 1321 |
| 1322 Verify that, chown(2) succeeds to change the group of a file specified |
| 1323 by path when called by non-root user with the following constraints, |
| 1324 - euid of the process is equal to the owner of the file. |
| 1325 - the intended gid is either egid, or one of the supplementary gids |
| 1326 of the process. |
| 1327 Also, verify that chown() clears the setuid/setgid bits set on the file. |
| 1328 |
| 1329 chown04 |
| 1330 |
| 1331 Verify that, |
| 1332 1) chown(2) returns -1 and sets errno to EPERM if the effective user id |
| 1333 of process does not match the owner of the file and the process is |
| 1334 not super user. |
| 1335 2) chown(2) returns -1 and sets errno to EACCES if search permission is |
| 1336 denied on a component of the path prefix. |
| 1337 3) chown(2) returns -1 and sets errno to EFAULT if pathname points |
| 1338 outside user's accessible address space. |
| 1339 4) chown(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 1340 component is too long. |
| 1341 5) chown(2) returns -1 and sets errno to ENOTDIR if the directory |
| 1342 component in pathname is not a directory. |
| 1343 6) chown(2) returns -1 and sets errno to ENOENT if the specified file |
| 1344 does not exists. |
| 1345 |
| 1346 chown05 |
| 1347 |
| 1348 Verify that, chown(2) succeeds to change the owner and group of a file |
| 1349 specified by path to any numeric owner(uid)/group(gid) values when invok
ed |
| 1350 by super-user. |
| 1351 |
| 1352 |
| 1353 close01 |
| 1354 |
| 1355 Test that closing a regular file and a pipe works correctly |
| 1356 |
| 1357 close02 |
| 1358 |
| 1359 Check that an invalid file descriptor returns EBADF |
| 1360 |
| 1361 close08 |
| 1362 |
| 1363 Basic test for close(2). |
| 1364 |
| 1365 |
| 1366 fchdir01 |
| 1367 |
| 1368 create a directory and cd into it. |
| 1369 |
| 1370 fchdir02 |
| 1371 |
| 1372 try to cd into a bad directory (bad fd). |
| 1373 |
| 1374 |
| 1375 fchmod01 |
| 1376 |
| 1377 Basic test for Fchmod(2). |
| 1378 |
| 1379 fchmod02 |
| 1380 |
| 1381 Verify that, fchmod(2) will succeed to change the mode of a file/directo
ry |
| 1382 set the sticky bit on it if invoked by root (uid = 0) process with |
| 1383 the following constraints, |
| 1384 - the process is not the owner of the file/directory. |
| 1385 - the effective group ID or one of the supplementary group ID's of the |
| 1386 process is equal to the group ID of the file/directory. |
| 1387 |
| 1388 fchmod03 |
| 1389 |
| 1390 Verify that, fchmod(2) will succeed to change the mode of a file |
| 1391 and set the sticky bit on it if invoked by non-root (uid != 0) |
| 1392 process with the following constraints, |
| 1393 - the process is the owner of the file. |
| 1394 - the effective group ID or one of the supplementary group ID's of the |
| 1395 process is equal to the group ID of the file. |
| 1396 |
| 1397 fchmod04 |
| 1398 |
| 1399 Verify that, fchmod(2) will succeed to change the mode of a directory |
| 1400 and set the sticky bit on it if invoked by non-root (uid != 0) process |
| 1401 with the following constraints, |
| 1402 - the process is the owner of the directory. |
| 1403 - the effective group ID or one of the supplementary group ID's of the |
| 1404 process is equal to the group ID of the directory. |
| 1405 |
| 1406 fchmod05 |
| 1407 |
| 1408 Verify that, fchmod(2) will succeed to change the mode of a directory |
| 1409 but fails to set the setgid bit on it if invoked by non-root (uid != 0) |
| 1410 process with the following constraints, |
| 1411 - the process is the owner of the directory. |
| 1412 - the effective group ID or one of the supplementary group ID's of the |
| 1413 process is not equal to the group ID of the directory. |
| 1414 |
| 1415 fchmod06 |
| 1416 |
| 1417 Verify that, |
| 1418 1) fchmod(2) returns -1 and sets errno to EPERM if the effective user id |
| 1419 of process does not match the owner of the file and the process is |
| 1420 not super user. |
| 1421 2) fchmod(2) returns -1 and sets errno to EBADF if the file descriptor |
| 1422 of the specified file is not valid. |
| 1423 |
| 1424 fchmod07 |
| 1425 |
| 1426 Verify that, fchmod(2) succeeds when used to change the mode permissions |
| 1427 of a file specified by file descriptor. |
| 1428 |
| 1429 |
| 1430 fchown01 |
| 1431 |
| 1432 Basic test for fchown(2). |
| 1433 |
| 1434 fchown02 |
| 1435 |
| 1436 Verify that, when fchown(2) invoked by super-user to change the owner an
d |
| 1437 group of a file specified by file descriptor to any numeric |
| 1438 owner(uid)/group(gid) values, |
| 1439 - clears setuid and setgid bits set on an executable file. |
| 1440 - preserves setgid bit set on a non-group-executable file. |
| 1441 |
| 1442 fchown03 |
| 1443 |
| 1444 Verify that, fchown(2) succeeds to change the group of a file specified |
| 1445 by path when called by non-root user with the following constraints, |
| 1446 - euid of the process is equal to the owner of the file. |
| 1447 - the intended gid is either egid, or one of the supplementary gids |
| 1448 of the process. |
| 1449 Also, verify that fchown() clears the setuid/setgid bits set on the file
. |
| 1450 |
| 1451 fchown04 |
| 1452 |
| 1453 Verify that, |
| 1454 1) fchown(2) returns -1 and sets errno to EPERM if the effective user id |
| 1455 of process does not match the owner of the file and the process is |
| 1456 not super user. |
| 1457 2) fchown(2) returns -1 and sets errno to EBADF if the file descriptor |
| 1458 of the specified file is not valid. |
| 1459 |
| 1460 fchown05 |
| 1461 |
| 1462 Verify that, fchown(2) succeeds to change the owner and group of a file |
| 1463 specified by file descriptor to any numeric owner(uid)/group(gid) values
|
| 1464 when invoked by super-user. |
| 1465 |
| 1466 lchown01 |
| 1467 |
| 1468 Verify that, lchown(2) succeeds to change the owner and group of a file |
| 1469 specified by path to any numeric owner(uid)/group(gid) values when invok
ed |
| 1470 by super-user. |
| 1471 |
| 1472 |
| 1473 lchown02 |
| 1474 |
| 1475 Verify that, |
| 1476 1) lchown(2) returns -1 and sets errno to EPERM if the effective user id |
| 1477 of process does not match the owner of the file and the process is |
| 1478 not super user. |
| 1479 2) lchown(2) returns -1 and sets errno to EACCES if search permission is |
| 1480 denied on a component of the path prefix. |
| 1481 3) lchown(2) returns -1 and sets errno to EFAULT if pathname points |
| 1482 outside user's accessible address space. |
| 1483 4) lchown(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 1484 component is too long. |
| 1485 5) lchown(2) returns -1 and sets errno to ENOTDIR if the directory |
| 1486 component in pathname is not a directory. |
| 1487 6) lchown(2) returns -1 and sets errno to ENOENT if the specified file |
| 1488 does not exists. |
| 1489 |
| 1490 |
| 1491 creat01 |
| 1492 |
| 1493 Testcase to check the basic functionality of the creat(2) system call. |
| 1494 |
| 1495 creat03 |
| 1496 |
| 1497 Testcase to check whether the sticky bit cleared. |
| 1498 |
| 1499 creat04 |
| 1500 |
| 1501 Testcase to check creat(2) fails with EACCES |
| 1502 |
| 1503 creat05 |
| 1504 |
| 1505 Testcase to check that creat(2) system call returns EMFILE. |
| 1506 |
| 1507 creat06 |
| 1508 |
| 1509 Testcase to check creat(2) sets the following errnos correctly: |
| 1510 1. EISDIR |
| 1511 2. ENAMETOOLONG |
| 1512 3. ENOENT |
| 1513 4. ENOTDIR |
| 1514 5. EFAULT |
| 1515 6. EACCES |
| 1516 |
| 1517 creat07 |
| 1518 |
| 1519 Testcase to check creat(2) sets the following errnos correctly: |
| 1520 1. ETXTBSY |
| 1521 |
| 1522 creat09 |
| 1523 |
| 1524 Basic test for creat(2) using 0700 argument. |
| 1525 |
| 1526 truncate01 |
| 1527 |
| 1528 Verify that, truncate(2) succeeds to truncate a file to a specified |
| 1529 length. |
| 1530 |
| 1531 |
| 1532 truncate02 |
| 1533 |
| 1534 Verify that, truncate(2) succeeds to truncate a file to a certain length
, |
| 1535 but the attempt to read past the truncated length will fail. |
| 1536 |
| 1537 |
| 1538 truncate03 |
| 1539 |
| 1540 Verify that, |
| 1541 1) truncate(2) returns -1 and sets errno to EACCES if search/write |
| 1542 permission denied for the process on the component of the path prefix |
| 1543 or named file. |
| 1544 2) truncate(2) returns -1 and sets errno to ENOTDIR if the component of |
| 1545 the path prefix is not a directory. |
| 1546 3) truncate(2) returns -1 and sets errno to EFAULT if pathname points |
| 1547 outside user's accessible address space. |
| 1548 4) truncate(2) returns -1 and sets errno to ENAMETOOLONG if the componen
t |
| 1549 of a pathname exceeded 255 characters or entire pathname exceeds 1023 |
| 1550 characters. |
| 1551 5) truncate(2) returns -1 and sets errno to ENOENT if the named file |
| 1552 does not exist. |
| 1553 |
| 1554 ftruncate01 |
| 1555 |
| 1556 Verify that, ftruncate(2) succeeds to truncate a file to a specified |
| 1557 length if the file indicated by file descriptor opened for writing. |
| 1558 |
| 1559 ftruncate02 |
| 1560 |
| 1561 Verify that, ftruncate(2) succeeds to truncate a file to a certain lengt
h, |
| 1562 but the attempt to read past the truncated length will fail. |
| 1563 |
| 1564 ftruncate03 |
| 1565 |
| 1566 Verify that, |
| 1567 1) ftruncate(2) returns -1 and sets errno to EINVAL if the specified |
| 1568 truncate length is less than 0. |
| 1569 2) ftruncate(2) returns -1 and sets errno to EBADF if the file descripto
r |
| 1570 of the specified file is not valid. |
| 1571 |
| 1572 vhangup01 |
| 1573 |
| 1574 Check the return value, and errno of vhangup(2) |
| 1575 when a non-root user calls vhangup(). |
| 1576 |
| 1577 vhangup02 |
| 1578 |
| 1579 To test the basic functionality of vhangup(2) |
| 1580 growfiles |
| 1581 |
| 1582 This program will grow a list of files. |
| 1583 Each file will grow by grow_incr before the same |
| 1584 file grows twice. Each file is open and closed before next file is open
ed. |
| 1585 |
| 1586 pipe01 |
| 1587 |
| 1588 Testcase to check the basic functionality of the pipe(2) syscall: |
| 1589 Check that both ends of the pipe (both file descriptors) are |
| 1590 available to a process opening the pipe. |
| 1591 |
| 1592 pipe05 |
| 1593 |
| 1594 Check what happens when pipe is passed a bad file descriptor. |
| 1595 |
| 1596 pipe06 |
| 1597 |
| 1598 Check what happens when the system runs out of pipes. |
| 1599 |
| 1600 pipe08 |
| 1601 |
| 1602 Check that a SIGPIPE signal is generated when a write is |
| 1603 attempted on an empty pipe. |
| 1604 |
| 1605 pipe09 |
| 1606 |
| 1607 Check that two processes can use the same pipe at the same time. |
| 1608 |
| 1609 pipe10 |
| 1610 |
| 1611 Check that parent can open a pipe and have a child read from it |
| 1612 |
| 1613 pipe11 |
| 1614 |
| 1615 Check if many children can read what is written to a pipe by the |
| 1616 parent. |
| 1617 |
| 1618 pipeio |
| 1619 |
| 1620 This tool can be used to beat on system or named pipes. |
| 1621 See the help() function below for user information. |
| 1622 |
| 1623 /ipc_stress/message_queue_test_01.c |
| 1624 /ipc_stress/pipe_test_01.c |
| 1625 /ipc_stress/semaphore_test_01.c |
| 1626 /ipc_stress/single_test_01.c |
| 1627 |
| 1628 proc01 |
| 1629 Recursively reads all files within /proc filesystem. |
| 1630 |
| 1631 lftest |
| 1632 The purpose of this test is to verify the file size limitations of a fil
esystem. |
| 1633 It writes one buffer at a time and lseeks from the beginning of the file
to the |
| 1634 end of the last write position. The intent is to test lseek64. |
| 1635 |
| 1636 |
| 1637 llseek01 |
| 1638 |
| 1639 Verify that, llseek() call succeeds to set the file pointer position |
| 1640 to an offset larger than file size. Also, verify that any attempt |
| 1641 to write to this location fails. |
| 1642 |
| 1643 llseek02 |
| 1644 |
| 1645 Verify that, |
| 1646 1. llseek() returns -1 and sets errno to EINVAL, if the 'Whence' argumen
t |
| 1647 is not a proper value. |
| 1648 2. llseek() returns -1 and sets errno to EBADF, if the file handle of |
| 1649 the specified file is not valid. |
| 1650 |
| 1651 lseek01 |
| 1652 |
| 1653 Basic test for lseek(2) |
| 1654 |
| 1655 lseek02 |
| 1656 |
| 1657 Negative test for lseek(2) |
| 1658 |
| 1659 lseek03 |
| 1660 |
| 1661 Negative test for lseek(2) whence |
| 1662 |
| 1663 lseek04 |
| 1664 |
| 1665 Negative test for lseek(2) of a fifo |
| 1666 |
| 1667 lseek05 |
| 1668 |
| 1669 Negative test for lseek(2) of a pipe |
| 1670 |
| 1671 lseek06 |
| 1672 |
| 1673 Verify that, lseek() call succeeds to set the file pointer position |
| 1674 to less than or equal to the file size, when a file is opened for |
| 1675 read or write. |
| 1676 |
| 1677 lseek07 |
| 1678 |
| 1679 Verify that, lseek() call succeeds to set the file pointer position |
| 1680 to more than the file size, when a file is opened for reading/writing. |
| 1681 |
| 1682 lseek08 |
| 1683 |
| 1684 Verify that, lseek() call succeeds to set the file pointer position |
| 1685 to the end of the file when 'whence' value set to SEEK_END and any |
| 1686 attempts to read from that position should fail. |
| 1687 |
| 1688 lseek09 |
| 1689 |
| 1690 Verify that, lseek() call succeeds to set the file pointer position |
| 1691 to the current specified location, when 'whence' value is set to |
| 1692 SEEK_CUR and the data read from the specified location should match |
| 1693 the expected data. |
| 1694 |
| 1695 lseek10 |
| 1696 |
| 1697 Verify that, |
| 1698 1. lseek() returns -1 and sets errno to ESPIPE, if the file handle of |
| 1699 the specified file is associated with a pipe, socket, or FIFO. |
| 1700 2. lseek() returns -1 and sets errno to EINVAL, if the 'Whence' argument |
| 1701 is not a proper value. |
| 1702 3. lseek() returns -1 and sets errno to EBADF, if the file handle of |
| 1703 the specified file is not valid. |
| 1704 |
| 1705 rwtest |
| 1706 |
| 1707 A wrapper for doio and iogen. |
| 1708 |
| 1709 doio |
| 1710 a general purpose io initiator with system call and |
| 1711 write logging. See doio.h for the structure which defines |
| 1712 what doio requests should look like. |
| 1713 |
| 1714 Currently doio can handle read,write,reada,writea,ssread, |
| 1715 sswrite, and many varieties of listio requests. |
| 1716 For disk io, if the O_SSD flag is set doio will allocate |
| 1717 the appropriate amount of ssd and do the transfer - thus, doio |
| 1718 can handle all of the primitive types of file io. |
| 1719 |
| 1720 iogen |
| 1721 A tool for generating file/sds io for a doio process |
| 1722 |
| 1723 pread01 |
| 1724 |
| 1725 Verify the functionality of pread() by writing known data using pwrite() |
| 1726 to the file at various specified offsets and later read from the file fr
om |
| 1727 various specified offsets, comparing the data read against the data |
| 1728 written. |
| 1729 |
| 1730 pread02 |
| 1731 |
| 1732 Verify that, |
| 1733 1) pread() fails when attempted to read from an unnamed pipe. |
| 1734 2) pread() fails if the specified offset position was invalid. |
| 1735 |
| 1736 |
| 1737 pwrite01 |
| 1738 |
| 1739 Verify the functionality of pwrite() by writing known data using pwrite(
) |
| 1740 to the file at various specified offsets and later read from the file fr
om |
| 1741 various specified offsets, comparing the data written against the data |
| 1742 read using read(). |
| 1743 |
| 1744 pwrite02 |
| 1745 |
| 1746 Verify that, |
| 1747 1) pwrite() fails when attempted to write to an unnamed pipe. |
| 1748 2) pwrite() fails if the specified offset position was invalid. |
| 1749 |
| 1750 |
| 1751 read01 |
| 1752 |
| 1753 Basic test for the read(2) system call |
| 1754 |
| 1755 read02 |
| 1756 |
| 1757 test 1: Does read return -1 if file descriptor is not valid, check for E
BADF |
| 1758 |
| 1759 test 2: Check if read sets EISDIR, if the fd refers to a directory |
| 1760 |
| 1761 test 3: Check if read sets EFAULT, if buf is -1. |
| 1762 |
| 1763 read03 |
| 1764 |
| 1765 Testcase to check that read() sets errno to EAGAIN |
| 1766 |
| 1767 read04 |
| 1768 |
| 1769 Testcase to check if read returns the number of bytes read correctly. |
| 1770 |
| 1771 |
| 1772 readv01 |
| 1773 |
| 1774 Testcase to check the basic functionality of the readv(2) system call. |
| 1775 |
| 1776 readv02 |
| 1777 |
| 1778 Testcase to check the error conditions of the readv(2) system call. |
| 1779 |
| 1780 write01 |
| 1781 |
| 1782 Basic test for write(2) system call. |
| 1783 |
| 1784 write02 |
| 1785 |
| 1786 Basic functionality test: does the return from write match the count |
| 1787 of the number of bytes written. |
| 1788 |
| 1789 |
| 1790 write03 |
| 1791 |
| 1792 Testcase to check that write(2) doesn't corrupt a file when it fails |
| 1793 |
| 1794 write04 |
| 1795 |
| 1796 Testcase to check that write() sets errno to EAGAIN |
| 1797 |
| 1798 write05 |
| 1799 |
| 1800 Check the return value, and errnos of write(2) |
| 1801 - when the file descriptor is invalid - EBADF |
| 1802 - when the buf parameter is invalid - EFAULT |
| 1803 - on an attempt to write to a pipe that is not open for reading - EPIPE |
| 1804 |
| 1805 |
| 1806 writev01 |
| 1807 |
| 1808 Testcase to check the basic functionality of writev(2) system call. |
| 1809 |
| 1810 |
| 1811 writev02 |
| 1812 |
| 1813 In these testcases, writev() is called with partially valid data |
| 1814 to be written in a sparse file. |
| 1815 |
| 1816 |
| 1817 writev03 |
| 1818 |
| 1819 The testcases are written calling writev() with partially valid data |
| 1820 to overwrite the contents, to write in the beginning and to write in |
| 1821 the end of the file. |
| 1822 |
| 1823 writev04 |
| 1824 |
| 1825 The testcases are written calling writev() with partially valid data |
| 1826 to overwrite the contents, to write in the beginning and to write in |
| 1827 the end of the file. This is same as writev03, but the length of |
| 1828 buffer used here is 8192 bytes. |
| 1829 |
| 1830 writev05 |
| 1831 |
| 1832 These testcases are written to test writev() on sparse files. This |
| 1833 is same as writev02. But the initial write() with valid data is |
| 1834 done at the beginning of the file. |
| 1835 |
| 1836 disktest |
| 1837 |
| 1838 Does repeated accesses to a filespec and optionally writes to, reads fro
m, |
| 1839 and verifies the data. By default, disktest makes assumptions about |
| 1840 the running environment which allows for a quick start of IO generation. |
| 1841 However, Disktest has a large number of command line options which c
an |
| 1842 be used to adapt the test for a variety of uses including data integrity
, |
| 1843 medium integrity, performance, and simple application simulation. |
| 1844 |
| 1845 |
| 1846 |
| 1847 |
| 1848 getdents01 |
| 1849 get a directory entry |
| 1850 |
| 1851 getdents02 |
| 1852 check that we get a failure with a bad file descriptor |
| 1853 |
| 1854 |
| 1855 getdents03 |
| 1856 check for an EINVAL error |
| 1857 |
| 1858 |
| 1859 getdents04 |
| 1860 check for an ENOTDIR error |
| 1861 |
| 1862 getdents05 |
| 1863 check that we get a failure with a bad dirp address. |
| 1864 process_stress |
| 1865 Spawn creates a tree |
| 1866 of processes with Dval depth and Bval breadth. Each parent will spawn |
| 1867 Bval children. Each child will store information about themselves |
| 1868 in shared memory. The leaf nodes will communicate the existence |
| 1869 of one another through message queues, once each leaf node has |
| 1870 received communication from all of her siblings she will reduce |
| 1871 the semaphore count and exit. Meanwhile all parents are waiting |
| 1872 to hear from their children through the use of semaphores. When |
| 1873 the semaphore count reaches zero then the parent knows all the |
| 1874 children have talked to one another. Locking of the connter semaphore |
| 1875 is provided by the use of another (binary) semaphore. |
| 1876 |
| 1877 |
| 1878 |
| 1879 |
| 1880 sched_stress |
| 1881 Exports required environment variables and runs sched_driver |
| 1882 sched_driver |
| 1883 This program uses system calls to change the |
| 1884 priorities of the throughput measurement testcases. |
| 1885 When real-time is in effect, priorities 50 through 64 |
| 1886 are used. (MAX_PRI and MIN_PRI) When user-time |
| 1887 (normal) is in effect, 0-14 (corresponding to nice() |
| 1888 calls) is used. The driver only keeps track of |
| 1889 values from 50 to 64, and the testcases will scale |
| 1890 them down to 0 to 14 when needed, to change the |
| 1891 priority of a user-time process. |
| 1892 |
| 1893 time-schedule |
| 1894 This programme will determine the context switch |
| 1895 (scheduling) overhead on a system. It takes into |
| 1896 account SMP machines. True context switches are |
| 1897 measured. |
| 1898 trace_sched |
| 1899 This utility spawns N tasks, each task sets its priority |
| 1900 by making a system call to the scheduler. The thread |
| 1901 function reads the priority that the scheduler sets for |
| 1902 this task and also reads from /proc the processor this |
| 1903 task last executed on the information that is gathered |
| 1904 by the thread function may be in real-time. Its only an |
| 1905 approximation. |
| 1906 |
| 1907 sched_getscheduler01 |
| 1908 |
| 1909 Testcase to check sched_getscheduler() returns correct return value |
| 1910 |
| 1911 sched_getscheduler02 |
| 1912 |
| 1913 To check for the errno ESRCH |
| 1914 |
| 1915 |
| 1916 sched_setscheduler01 |
| 1917 |
| 1918 Testcase to test whether sched_setscheduler(2) sets the errnos |
| 1919 correctly. |
| 1920 |
| 1921 sched_setscheduler02 |
| 1922 |
| 1923 Testcase to test whether sched_setscheduler(2) sets the errnos |
| 1924 correctly. |
| 1925 |
| 1926 |
| 1927 sched_yield01 |
| 1928 |
| 1929 Testcase to check that sched_yield returns correct values. |
| 1930 |
| 1931 |
| 1932 nice01 |
| 1933 |
| 1934 Verify that root can provide a negative value to nice() |
| 1935 and hence root can decrease the nice value of the process |
| 1936 using nice() system call |
| 1937 |
| 1938 nice02 |
| 1939 |
| 1940 Verify that any user can successfully increase the nice value of |
| 1941 the process by passing a higher increment value (> max. applicable limit
s) |
| 1942 to nice() system call. |
| 1943 |
| 1944 nice03 |
| 1945 |
| 1946 Verify that any user can successfully increase the nice value of |
| 1947 the process by passing an increment value (< max. applicable limits) to |
| 1948 nice() system call. |
| 1949 |
| 1950 nice04 |
| 1951 |
| 1952 Verify that, nice(2) fails when, a non-root user attempts to increase |
| 1953 the priority of a process by specifying a negative increment value. |
| 1954 |
| 1955 nice05 |
| 1956 |
| 1957 Basic test for nice(2) |
| 1958 |
| 1959 |
| 1960 poll01 |
| 1961 |
| 1962 Verify that valid open file descriptor must be provided to poll() to |
| 1963 succeed. |
| 1964 |
| 1965 select01 |
| 1966 |
| 1967 Basic test for the select(2) system call to a fd of regular file with no
I/O |
| 1968 and small timeout |
| 1969 |
| 1970 select02 |
| 1971 |
| 1972 Basic test for the select(2) system call to fd of system pipe with no I/
O |
| 1973 and small timeout |
| 1974 |
| 1975 select03 |
| 1976 |
| 1977 Basic test for the select(2) system call to fd of a named-pipe (FIFO) |
| 1978 |
| 1979 select04 |
| 1980 |
| 1981 Verify that select(2) returns immediately (does not block) if the |
| 1982 timeout value is zero. |
| 1983 |
| 1984 select05 |
| 1985 |
| 1986 Verify that select(2) fails when one or more of the file descriptor sets |
| 1987 specify a file descriptor which is not valid. |
| 1988 |
| 1989 select06 |
| 1990 |
| 1991 Verify that select(2) fails when a signal is delivered before any of the |
| 1992 selected events occur and before the timeout interval expires. |
| 1993 |
| 1994 select07 |
| 1995 |
| 1996 Verify that select(2) fails when an invalid timeout interval is specifie
d. |
| 1997 |
| 1998 select08 |
| 1999 |
| 2000 Verify the functionality of select(2) by passing non-null writefds |
| 2001 which points to a regular file, pipes or FIFO's. |
| 2002 |
| 2003 select09 |
| 2004 |
| 2005 Verify the functionality of select(2) by passing non-null readfds |
| 2006 which points to a regular file, pipes or FIFO's. |
| 2007 |
| 2008 select10 |
| 2009 |
| 2010 Verify that a successful call to select() shall return the desired |
| 2011 number of modified descriptors for which bits are set in the bit masks, |
| 2012 where descriptors points to a regular file, pipes or FIFO's. |
| 2013 sem01 |
| 2014 |
| 2015 Creates a semaphore and two processes. The processes |
| 2016 each go through a loop where they semdown, delay for a |
| 2017 random amount of time, and semup, so they will almost |
| 2018 always be fighting for control of the semaphore. |
| 2019 |
| 2020 sem02 |
| 2021 The application creates several threads using pthread_create(). |
| 2022 One thread performs a semop() with the SEM_UNDO flag set. The |
| 2023 change in semaphore value performed by that semop should be |
| 2024 "undone" only when the last pthread exits. |
| 2025 |
| 2026 |
| 2027 semctl01 |
| 2028 |
| 2029 test the 10 possible semctl() commands |
| 2030 |
| 2031 semctl02 |
| 2032 |
| 2033 test for EACCES error |
| 2034 |
| 2035 semctl03 |
| 2036 |
| 2037 test for EINVAL and EFAULT errors |
| 2038 |
| 2039 semctl04 |
| 2040 |
| 2041 test for EPERM error |
| 2042 |
| 2043 |
| 2044 semctl05 |
| 2045 |
| 2046 test for ERANGE error |
| 2047 |
| 2048 semget01 |
| 2049 |
| 2050 test that semget() correctly creates a semaphore set |
| 2051 |
| 2052 semget02 |
| 2053 |
| 2054 test for EACCES and EEXIST errors |
| 2055 |
| 2056 semget03 |
| 2057 |
| 2058 test for ENOENT error |
| 2059 |
| 2060 semget05 |
| 2061 |
| 2062 test for ENOSPC error |
| 2063 |
| 2064 semget06 |
| 2065 |
| 2066 test for EINVAL error |
| 2067 |
| 2068 semop01 |
| 2069 |
| 2070 test that semop() basic functionality is correct |
| 2071 |
| 2072 semop02 |
| 2073 |
| 2074 test for E2BIG, EACCES, EFAULT and EINVAL errors |
| 2075 |
| 2076 semop03 |
| 2077 |
| 2078 test for EFBIG error |
| 2079 |
| 2080 semop04 |
| 2081 |
| 2082 test for EAGAIN error |
| 2083 |
| 2084 semop05 |
| 2085 |
| 2086 test for EINTR and EIDRM errors |
| 2087 |
| 2088 |
| 2089 shmat01 |
| 2090 test that shmat() works correctly |
| 2091 |
| 2092 shmat02 |
| 2093 check for EINVAL and EACCES errors |
| 2094 |
| 2095 |
| 2096 shmat03 |
| 2097 test for EACCES error |
| 2098 |
| 2099 |
| 2100 shmctl01 |
| 2101 test the IPC_STAT, IPC_SET and IPC_RMID commands as |
| 2102 they are used with shmctl() |
| 2103 |
| 2104 |
| 2105 shmctl02 |
| 2106 check for EACCES, EFAULT and EINVAL errors |
| 2107 |
| 2108 |
| 2109 shmctl03 |
| 2110 check for EACCES, and EPERM errors |
| 2111 |
| 2112 |
| 2113 shmdt01 |
| 2114 check that shared memory is detached correctly |
| 2115 |
| 2116 |
| 2117 shmdt02 |
| 2118 check for EINVAL error |
| 2119 |
| 2120 |
| 2121 shmget01 |
| 2122 test that shmget() correctly creates a shared memory segment |
| 2123 |
| 2124 |
| 2125 shmget02 |
| 2126 check for ENOENT, EEXIST and EINVAL errors |
| 2127 |
| 2128 |
| 2129 shmget03 |
| 2130 test for ENOSPC error |
| 2131 |
| 2132 |
| 2133 shmget04 |
| 2134 test for EACCES error |
| 2135 |
| 2136 |
| 2137 shmget05 |
| 2138 test for EACCES error |
| 2139 shmat1 |
| 2140 |
| 2141 Test the LINUX memory manager. The program is aimed at |
| 2142 stressing the memory manager by repeated shmat/write/read/ |
| 2143 shmatd of file/memory of random size (maximum 1000 * 4096) |
| 2144 done by multiple processes. |
| 2145 |
| 2146 shm_test |
| 2147 |
| 2148 This program is designed to stress the Memory management sub - |
| 2149 system of Linux. This program will spawn multiple pairs of |
| 2150 reader and writer threads. One thread will create the shared |
| 2151 segment of random size and write to this memory, the other |
| 2152 pair will read from this memory. |
| 2153 |
| 2154 sigaction01 |
| 2155 |
| 2156 Test some features of sigaction (see below for more details) |
| 2157 |
| 2158 |
| 2159 sigaction02 |
| 2160 |
| 2161 Testcase to check the basic errnos set by the sigaction(2) syscall. |
| 2162 |
| 2163 |
| 2164 sigaltstack01 |
| 2165 |
| 2166 Send a signal using the main stack. While executing the signal handler |
| 2167 compare a variable's address lying on the main stack with the stack |
| 2168 boundaries returned by sigaltstack(). |
| 2169 |
| 2170 |
| 2171 sigaltstack02 |
| 2172 |
| 2173 Verify that, |
| 2174 1. sigaltstack() fails and sets errno to EINVAL when "ss_flags" field |
| 2175 pointed to by 'ss' contains invalid flags. |
| 2176 2. sigaltstack() fails and sets errno to ENOMEM when the size of alterna
te |
| 2177 stack area is less than MINSIGSTKSZ. |
| 2178 |
| 2179 sighold02 |
| 2180 |
| 2181 Basic test for the sighold02(2) system call. |
| 2182 |
| 2183 |
| 2184 signal01 |
| 2185 set the signal handler to our own function |
| 2186 |
| 2187 |
| 2188 signal02 |
| 2189 Test that we get an error using illegal signals |
| 2190 |
| 2191 signal03 |
| 2192 |
| 2193 Boundary value and other invalid value checking of signal setup and sign
al |
| 2194 sending. |
| 2195 |
| 2196 |
| 2197 signal04 |
| 2198 restore signals to default behavior |
| 2199 |
| 2200 |
| 2201 signal05 |
| 2202 set signals to be ignored |
| 2203 |
| 2204 |
| 2205 sigprocmask01 |
| 2206 |
| 2207 Verify that sigprocmask() succeeds to examine and change the calling |
| 2208 process's signal mask. |
| 2209 Also, verify that sigpending() succeeds to store signal mask that are |
| 2210 blocked from delivery and pending for the calling process. |
| 2211 |
| 2212 sigrelse01 |
| 2213 |
| 2214 Basic test for the sigrelse(2) system call. |
| 2215 |
| 2216 sigsuspend01 |
| 2217 |
| 2218 Verify that sigsuspend() succeeds to change process's current signal |
| 2219 mask with the specified signal mask and suspends the process execution |
| 2220 until the delivery of a signal. |
| 2221 kill01 |
| 2222 |
| 2223 Test case to check the basic functionality of kill(). |
| 2224 |
| 2225 kill02 |
| 2226 |
| 2227 Sending a signal to processes with the same process group ID |
| 2228 |
| 2229 kill03 |
| 2230 |
| 2231 Test case to check that kill fails when given an invalid signal. |
| 2232 |
| 2233 kill04 |
| 2234 |
| 2235 Test case to check that kill() fails when passed a non-existent pid. |
| 2236 |
| 2237 kill05 |
| 2238 |
| 2239 Test case to check that kill() fails when passed a pid owned by another |
| 2240 user. |
| 2241 |
| 2242 kill06 |
| 2243 |
| 2244 Test case to check the basic functionality of kill() when killing an |
| 2245 entire process group with a negative pid. |
| 2246 |
| 2247 kill07 |
| 2248 |
| 2249 Test case to check that SIGKILL can not be caught. |
| 2250 |
| 2251 kill08 |
| 2252 |
| 2253 Test case to check the basic functionality of kill() when kill an |
| 2254 entire process group. |
| 2255 |
| 2256 kill09 |
| 2257 Basic test for kill(2) |
| 2258 |
| 2259 kill10 |
| 2260 Signal flooding test. |
| 2261 |
| 2262 |
| 2263 mtest01 |
| 2264 mallocs memory <chunksize> at a time until malloc fails. |
| 2265 mallocstress |
| 2266 |
| 2267 This program is designed to stress the VMM by doing repeated */ |
| 2268 mallocs and frees, with out using the swap space. This is */ |
| 2269 achieved by spawning N threads with repeatedly malloc and free*/ |
| 2270 a memory of size M. The stress can be increased by increasing */ |
| 2271 the number of repetitions over the default number using the */ |
| 2272 -l [num] option. |
| 2273 |
| 2274 clisrv |
| 2275 |
| 2276 Sender: Read contents of data file. Write each line to socket, then |
| 2277 read line back from socket and write to standard output. |
| 2278 Receiver: Read a stream socket one line at a time and write each line |
| 2279 back to the sender. |
| 2280 Usage: pthcli [port number] |
| 2281 |
| 2282 |
| 2283 socket01 |
| 2284 |
| 2285 Verify that socket() returns the proper errno for various failure cases |
| 2286 |
| 2287 |
| 2288 socketpair01 |
| 2289 |
| 2290 Verify that socketpair() returns the proper errno for various failure ca
ses |
| 2291 |
| 2292 |
| 2293 sockioctl01 |
| 2294 |
| 2295 Verify that ioctl() on sockets returns the proper errno for various |
| 2296 failure cases |
| 2297 |
| 2298 connect01 |
| 2299 |
| 2300 Verify that connect() returns the proper errno for various failure cases |
| 2301 |
| 2302 getpeername01 |
| 2303 |
| 2304 Verify that getpeername() returns the proper errno for various failure c
ases |
| 2305 |
| 2306 |
| 2307 getsockname01 |
| 2308 |
| 2309 Verify that getsockname() returns the proper errno for various failure c
ases |
| 2310 |
| 2311 getsockopt01 |
| 2312 |
| 2313 Verify that getsockopt() returns the proper errno for various failure ca
ses |
| 2314 |
| 2315 listen01 |
| 2316 |
| 2317 Verify that listen() returns the proper errno for various failure cases |
| 2318 |
| 2319 accept01 |
| 2320 |
| 2321 Verify that accept() returns the proper errno for various failure cases |
| 2322 |
| 2323 bind01 |
| 2324 |
| 2325 Verify that bind() returns the proper errno for various failure cases |
| 2326 |
| 2327 |
| 2328 recv01 |
| 2329 |
| 2330 Verify that recv() returns the proper errno for various failure cases |
| 2331 |
| 2332 |
| 2333 recvfrom01 |
| 2334 |
| 2335 Verify that recvfrom() returns the proper errno for various failure case
s |
| 2336 |
| 2337 |
| 2338 recvmsg01 |
| 2339 |
| 2340 Verify that recvmsg() returns the proper errno for various failure cases |
| 2341 |
| 2342 send01 |
| 2343 |
| 2344 Verify that send() returns the proper errno for various failure cases |
| 2345 |
| 2346 sendmsg01 |
| 2347 |
| 2348 Verify that sendmsg() returns the proper errno for various failure cases |
| 2349 sendto01 |
| 2350 |
| 2351 Verify that sendto() returns the proper errno for various failure cases |
| 2352 |
| 2353 setsockopt01 |
| 2354 |
| 2355 Verify that setsockopt() returns the proper errno for various failure ca
ses |
| 2356 |
| 2357 |
| 2358 fstat01 |
| 2359 |
| 2360 Basic test for fstat(2) |
| 2361 |
| 2362 fstat02 |
| 2363 |
| 2364 Verify that, fstat(2) succeeds to get the status of a file and fills |
| 2365 the stat structure elements though file pointed to by file descriptor |
| 2366 not opened for reading. |
| 2367 |
| 2368 fstat03 |
| 2369 |
| 2370 Verify that, fstat(2) returns -1 and sets errno to EBADF if the file |
| 2371 pointed to by file descriptor is not valid. |
| 2372 |
| 2373 fstat04 |
| 2374 |
| 2375 Verify that, fstat(2) succeeds to get the status of a file pointed by |
| 2376 file descriptor and fills the stat structure elements. |
| 2377 |
| 2378 |
| 2379 fstatfs01 |
| 2380 |
| 2381 Basic test for fstatfs(2) |
| 2382 |
| 2383 fstatfs02 |
| 2384 |
| 2385 Testcase to check fstatfs() sets errno correctly. |
| 2386 |
| 2387 lstat01 |
| 2388 |
| 2389 Verify that, lstat(2) succeeds to get the status of a file pointed to by |
| 2390 symlink and fills the stat structure elements. |
| 2391 |
| 2392 lstat02 |
| 2393 |
| 2394 Basic test for lstat(2) |
| 2395 |
| 2396 lstat03 |
| 2397 |
| 2398 Verify that, |
| 2399 1) lstat(2) returns -1 and sets errno to EACCES if search permission is |
| 2400 denied on a component of the path prefix. |
| 2401 2) lstat(2) returns -1 and sets errno to ENOENT if the specified file |
| 2402 does not exists or empty string. |
| 2403 3) lstat(2) returns -1 and sets errno to EFAULT if pathname points |
| 2404 outside user's accessible address space. |
| 2405 4) lstat(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 2406 component is too long. |
| 2407 5) lstat(2) returns -1 and sets errno to ENOTDIR if the directory |
| 2408 component in pathname is not a directory. |
| 2409 |
| 2410 stat01 |
| 2411 |
| 2412 Verify that, stat(2) succeeds to get the status of a file and fills the |
| 2413 stat structure elements. |
| 2414 |
| 2415 stat02 |
| 2416 |
| 2417 Verify that, stat(2) succeeds to get the status of a file and fills the |
| 2418 stat structure elements though process doesn't have read access to the |
| 2419 file. |
| 2420 |
| 2421 |
| 2422 stat03 |
| 2423 |
| 2424 Verify that, |
| 2425 1) stat(2) returns -1 and sets errno to EACCES if search permission is |
| 2426 denied on a component of the path prefix. |
| 2427 2) stat(2) returns -1 and sets errno to ENOENT if the specified file |
| 2428 does not exists or empty string. |
| 2429 3) stat(2) returns -1 and sets errno to EFAULT if pathname points |
| 2430 outside user's accessible address space. |
| 2431 4) stat(2) returns -1 and sets errno to ENAMETOOLONG if the pathname |
| 2432 component is too long. |
| 2433 5) stat(2) returns -1 and sets errno to ENOTDIR if the directory |
| 2434 component in pathname is not a directory. |
| 2435 |
| 2436 stat05 |
| 2437 |
| 2438 Basic test for the stat05(2) system call. |
| 2439 |
| 2440 statfs01 |
| 2441 |
| 2442 Basic test for the statfs(2) system call. |
| 2443 |
| 2444 statfs02 |
| 2445 |
| 2446 Testcase to check that statfs(2) sets errno correctly. |
| 2447 |
| 2448 |
| 2449 read01 |
| 2450 |
| 2451 Basic test for the read(2) system call |
| 2452 |
| 2453 read02 |
| 2454 |
| 2455 test 1: Does read return -1 if file descriptor is not valid, check for E
BADF |
| 2456 |
| 2457 test 2: Check if read sets EISDIR, if the fd refers to a directory |
| 2458 |
| 2459 test 3: Check if read sets EFAULT, if buf is -1. |
| 2460 |
| 2461 read03 |
| 2462 |
| 2463 Testcase to check that read() sets errno to EAGAIN |
| 2464 |
| 2465 read04 |
| 2466 |
| 2467 Testcase to check if read returns the number of bytes read correctly. |
| 2468 |
| 2469 umask01 |
| 2470 |
| 2471 Basic test for the umask(2) system call. |
| 2472 |
| 2473 umask02 |
| 2474 |
| 2475 Check that umask changes the mask, and that the previous |
| 2476 value of the mask is returned correctly for each value. |
| 2477 |
| 2478 umask03 |
| 2479 |
| 2480 Check that umask changes the mask, and that the previous |
| 2481 value of the mask is returned correctly for each value. |
| 2482 |
| 2483 |
| 2484 |
| 2485 getgroups01 |
| 2486 |
| 2487 Getgroups system call critical test |
| 2488 |
| 2489 getgroups02 |
| 2490 |
| 2491 Basic test for getgroups(2) |
| 2492 |
| 2493 getgroups03 |
| 2494 |
| 2495 Verify that, getgroups() system call gets the supplementary group IDs |
| 2496 of the calling process. |
| 2497 |
| 2498 getgroups04 |
| 2499 |
| 2500 Verify that, |
| 2501 getgroups() fails with -1 and sets errno to EINVAL if the size |
| 2502 argument value is -ve. |
| 2503 |
| 2504 gethostname01 |
| 2505 |
| 2506 Basic test for gethostname(2) |
| 2507 |
| 2508 |
| 2509 getpgid01 |
| 2510 |
| 2511 Testcase to check the basic functionality of getpgid(). |
| 2512 |
| 2513 getpgid02 |
| 2514 |
| 2515 Testcase to check the basic functionality of getpgid(). |
| 2516 |
| 2517 getpgrp01 |
| 2518 Basic test for getpgrp(2) |
| 2519 |
| 2520 |
| 2521 getpriority01 |
| 2522 |
| 2523 Verify that getpriority() succeeds get the scheduling priority of |
| 2524 the current process, process group or user. |
| 2525 |
| 2526 |
| 2527 getpriority02 |
| 2528 |
| 2529 Verify that, |
| 2530 1) getpriority() sets errno to ESRCH if no process was located |
| 2531 was located for 'which' and 'who' arguments. |
| 2532 2) getpriority() sets errno to EINVAL if 'which' argument was |
| 2533 not one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER. |
| 2534 |
| 2535 getresgid01 |
| 2536 |
| 2537 Verify that getresgid() will be successful to get the real, effective |
| 2538 and saved user id of the calling process. |
| 2539 |
| 2540 getresgid02 |
| 2541 |
| 2542 Verify that getresgid() will be successful to get the real, effective |
| 2543 and saved user ids after calling process invokes setregid() to change |
| 2544 the effective/saved gids to that of specified user. |
| 2545 |
| 2546 getresgid03 |
| 2547 |
| 2548 Verify that getresgid() will be successful to get the real, effective |
| 2549 and saved user ids after calling process invokes setresgid() to change |
| 2550 the effective gid to that of specified user. |
| 2551 |
| 2552 |
| 2553 getresuid01 |
| 2554 |
| 2555 Verify that getresuid() will be successful to get the real, effective |
| 2556 and saved user id of the calling process. |
| 2557 |
| 2558 getresuid02 |
| 2559 |
| 2560 Verify that getresuid() will be successful to get the real, effective |
| 2561 and saved user ids after calling process invokes setreuid() to change |
| 2562 the effective/saved uids to that of specified user. |
| 2563 |
| 2564 getresuid03 |
| 2565 |
| 2566 Verify that getresuid() will be successful to get the real, effective |
| 2567 and saved user ids after calling process invokes setresuid() to change |
| 2568 the effective uid to that of specified user. |
| 2569 |
| 2570 |
| 2571 getsid01 |
| 2572 |
| 2573 call getsid() and make sure it succeeds |
| 2574 |
| 2575 getsid02 |
| 2576 |
| 2577 call getsid() with an invalid PID to produce a failure |
| 2578 |
| 2579 |
| 2580 setfsgid01 |
| 2581 |
| 2582 Testcase to check the basic functionality of setfsgid(2) system |
| 2583 call. |
| 2584 |
| 2585 setfsuid01 |
| 2586 |
| 2587 Testcase to test the basic functionality of the setfsuid(2) system |
| 2588 call. |
| 2589 |
| 2590 |
| 2591 setgid01 |
| 2592 |
| 2593 Basic test for the setgid(2) system call. |
| 2594 |
| 2595 setgid02 |
| 2596 |
| 2597 Testcase to ensure that the setgid() system call sets errno to EPERM |
| 2598 |
| 2599 |
| 2600 setgroups01 |
| 2601 |
| 2602 Basic test for the setgroups(2) system call. |
| 2603 |
| 2604 setgroups02 |
| 2605 |
| 2606 Verify that, |
| 2607 1. setgroups() fails with -1 and sets errno to EINVAL if the size |
| 2608 argument value is > NGROUPS |
| 2609 2. setgroups() fails with -1 and sets errno to EPERM if the |
| 2610 calling process is not super-user. |
| 2611 |
| 2612 setgroups03 |
| 2613 |
| 2614 Verify that, only root process can invoke setgroups() system call to |
| 2615 set the supplementary group IDs of the process. |
| 2616 |
| 2617 |
| 2618 setpgid01 |
| 2619 |
| 2620 Basic test for setpgid(2) system call. |
| 2621 |
| 2622 setpgid02 |
| 2623 |
| 2624 Testcase to check that setpgid() sets errno correctly. |
| 2625 |
| 2626 setpgid03 |
| 2627 |
| 2628 Test to check the error and trivial conditions in setpgid system call |
| 2629 |
| 2630 setpriority01 |
| 2631 |
| 2632 set the priority for the test process lower. |
| 2633 |
| 2634 setpriority02 |
| 2635 |
| 2636 test for an expected failure by trying to raise |
| 2637 the priority for the test process while not having |
| 2638 permissions to do so. |
| 2639 |
| 2640 setpriority03 |
| 2641 |
| 2642 test for an expected failure by using an invalid |
| 2643 PRIO value |
| 2644 setpriority04 |
| 2645 |
| 2646 setpriority04 |
| 2647 test for an expected failure by using an invalid |
| 2648 process id |
| 2649 |
| 2650 |
| 2651 setpriority05 |
| 2652 test for an expected failure by trying to change |
| 2653 a process with an ID that is different from the |
| 2654 test process |
| 2655 |
| 2656 setregid01 |
| 2657 |
| 2658 Basic test for the setregid(2) system call. |
| 2659 |
| 2660 setregid02 |
| 2661 |
| 2662 Test that setregid() fails and sets the proper errno values when a |
| 2663 non-root user attempts to change the real or effective group id to a |
| 2664 value other than the current gid or the current effective gid. |
| 2665 |
| 2666 setregid03 |
| 2667 |
| 2668 Test setregid() when executed by a non-root user. |
| 2669 |
| 2670 setregid04 |
| 2671 |
| 2672 Test setregid() when executed by root. |
| 2673 |
| 2674 setresuid01 |
| 2675 |
| 2676 Test setresuid() when executed by root. |
| 2677 |
| 2678 setresuid02 |
| 2679 |
| 2680 Test that a non-root user can change the real, effective and saved |
| 2681 uid values through the setresuid system call. |
| 2682 |
| 2683 |
| 2684 setresuid03 |
| 2685 |
| 2686 Test that the setresuid system call sets the proper errno |
| 2687 values when a non-root user attempts to change the real, effective or |
| 2688 saved uid to a value other than one of the current uid, the current |
| 2689 effective uid of the current saved uid. Also verify that setresuid |
| 2690 fails if an invalid uid value is given. |
| 2691 |
| 2692 setreuid01 |
| 2693 |
| 2694 Basic test for the setreuid(2) system call. |
| 2695 |
| 2696 setreuid02 |
| 2697 |
| 2698 Test setreuid() when executed by root. |
| 2699 |
| 2700 setreuid03 |
| 2701 |
| 2702 Test setreuid() when executed by an unprivileged user. |
| 2703 |
| 2704 |
| 2705 setreuid04 |
| 2706 |
| 2707 Test that root can change the real and effective uid to an |
| 2708 unprivileged user. |
| 2709 |
| 2710 setreuid05 |
| 2711 |
| 2712 Test the setreuid() feature, verifying the role of the saved-set-uid |
| 2713 and setreuid's effect on it. |
| 2714 |
| 2715 setreuid06 |
| 2716 |
| 2717 Test that EINVAL is set when setreuid is given an invalid user id. |
| 2718 |
| 2719 setrlimit01 |
| 2720 |
| 2721 Testcase to check the basic functionality of the setrlimit system call. |
| 2722 |
| 2723 |
| 2724 setrlimit02 |
| 2725 |
| 2726 Testcase to test the different errnos set by setrlimit(2) system call. |
| 2727 |
| 2728 setrlimit03 |
| 2729 |
| 2730 Test for EPERM when the super-user tries to increase RLIMIT_NOFILE |
| 2731 beyond the system limit. |
| 2732 |
| 2733 setsid01 |
| 2734 |
| 2735 Test to check the error and trivial conditions in setsid system call |
| 2736 |
| 2737 setuid01 |
| 2738 |
| 2739 Basic test for the setuid(2) system call. |
| 2740 |
| 2741 setuid02 |
| 2742 |
| 2743 Basic test for the setuid(2) system call as root. |
| 2744 |
| 2745 setuid03 |
| 2746 |
| 2747 Test to check the error and trivial conditions in setuid |
| 2748 |
| 2749 fs_perms |
| 2750 |
| 2751 Regression test for Linux filesystem permissions. |
| 2752 uname01 |
| 2753 |
| 2754 Basic test for the uname(2) system call. |
| 2755 |
| 2756 uname02 |
| 2757 |
| 2758 Call uname() with an invalid address to produce a failure |
| 2759 |
| 2760 uname03 |
| 2761 |
| 2762 Call uname() and make sure it succeeds |
| 2763 sysctl01 |
| 2764 |
| 2765 Testcase for testing the basic functionality of sysctl(2) system call. |
| 2766 This testcase attempts to read the kernel parameters using |
| 2767 sysctl({CTL_KERN, KERN_ }, ...) and compares it with the known |
| 2768 values. |
| 2769 |
| 2770 sysctl03 |
| 2771 |
| 2772 Testcase to check that sysctl(2) sets errno to EPERM correctly. |
| 2773 |
| 2774 |
| 2775 sysctl04 |
| 2776 |
| 2777 Testcase to check that sysctl(2) sets errno to ENOTDIR |
| 2778 |
| 2779 |
| 2780 sysctl05 |
| 2781 |
| 2782 Testcase to check that sysctl(2) sets errno to EFAULT |
| 2783 |
| 2784 time01 |
| 2785 |
| 2786 Basic test for the time(2) system call. |
| 2787 |
| 2788 |
| 2789 time02 |
| 2790 |
| 2791 Verify that time(2) returns the value of time in seconds since |
| 2792 the Epoch and stores this value in the memory pointed to by the paramete
r. |
| 2793 |
| 2794 times01 |
| 2795 |
| 2796 Basic test for the times(2) system call. |
| 2797 |
| 2798 times02 |
| 2799 |
| 2800 Testcase to test that times() sets errno correctly |
| 2801 |
| 2802 times03 |
| 2803 |
| 2804 Testcase to check the basic functionality of the times() system call. |
| 2805 |
| 2806 utime01 |
| 2807 |
| 2808 Verify that the system call utime() successfully sets the modification |
| 2809 and access times of a file to the current time, if the times argument |
| 2810 is null, and the user ID of the process is "root". |
| 2811 |
| 2812 utime02 |
| 2813 |
| 2814 Verify that the system call utime() successfully sets the modification |
| 2815 and access times of a file to the current time, under the following |
| 2816 constraints, |
| 2817 - The times argument is null. |
| 2818 - The user ID of the process is not "root". |
| 2819 - The file is owned by the user ID of the process. |
| 2820 |
| 2821 utime03 |
| 2822 |
| 2823 Verify that the system call utime() successfully sets the modification |
| 2824 and access times of a file to the current time, under the following |
| 2825 constraints, |
| 2826 - The times argument is null. |
| 2827 - The user ID of the process is not "root". |
| 2828 - The file is not owned by the user ID of the process. |
| 2829 - The user ID of the process has write access to the file. |
| 2830 |
| 2831 |
| 2832 utime04 |
| 2833 |
| 2834 Verify that the system call utime() successfully sets the modification |
| 2835 and access times of a file to the time specified by times argument, if |
| 2836 the times argument is not null, and the user ID of the process is "root"
. |
| 2837 |
| 2838 |
| 2839 utime05 |
| 2840 |
| 2841 Verify that the system call utime() successfully sets the modification |
| 2842 and access times of a file to the value specified by the times argument |
| 2843 under the following constraints, |
| 2844 - The times argument is not null, |
| 2845 - The user ID of the process is not "root". |
| 2846 - The file is owned by the user ID of the process. |
| 2847 |
| 2848 |
| 2849 utime06 |
| 2850 |
| 2851 1. Verify that the system call utime() fails to set the modification |
| 2852 and access times of a file to the current time, under the following |
| 2853 constraints, |
| 2854 - The times argument is null. |
| 2855 - The user ID of the process is not "root". |
| 2856 - The file is not owned by the user ID of the process. |
| 2857 - The user ID of the process does not have write access to the |
| 2858 file. |
| 2859 2. Verify that the system call utime() fails to set the modification |
| 2860 and access times of a file if the specified file doesn't exist. |
| 2861 |
| 2862 settimeofday01 |
| 2863 |
| 2864 Testcase to check the basic functionality of settimeofday(). |
| 2865 |
| 2866 |
| 2867 settimeofday02 |
| 2868 |
| 2869 Testcase to check that settimeofday() sets errnos correctly. |
| 2870 |
| 2871 stime01 |
| 2872 |
| 2873 Verify that the system call stime() successfully sets the system's idea |
| 2874 of data and time if invoked by "root" user. |
| 2875 |
| 2876 stime02 |
| 2877 |
| 2878 Verify that the system call stime() fails to set the system's idea |
| 2879 of data and time if invoked by "non-root" user. |
| 2880 |
| 2881 gettimeofday01 |
| 2882 |
| 2883 Testcase to check that gettimeofday(2) sets errno to EFAULT. |
| 2884 |
| 2885 |
| 2886 |
| 2887 alarm01 |
| 2888 |
| 2889 Basic test for alarm(2). |
| 2890 |
| 2891 alarm02 |
| 2892 |
| 2893 Boundary Value Test for alarm(2). |
| 2894 |
| 2895 alarm03 |
| 2896 |
| 2897 Alarm(2) cleared by a fork. |
| 2898 |
| 2899 alarm04 |
| 2900 |
| 2901 Check that when an alarm request is made, the signal SIGALRM is received |
| 2902 even after the process has done an exec(). |
| 2903 |
| 2904 alarm05 |
| 2905 |
| 2906 Check the functionality of the Alarm system call when the time input |
| 2907 parameter is non zero. |
| 2908 |
| 2909 alarm06 |
| 2910 |
| 2911 Check the functionality of the Alarm system call when the time input |
| 2912 parameter is zero. |
| 2913 |
| 2914 alarm07 |
| 2915 |
| 2916 Check the functionality of the alarm() when the time input |
| 2917 parameter is non-zero and the process does a fork. |
| 2918 |
| 2919 getegid01 |
| 2920 |
| 2921 Basic test for getegid(2) |
| 2922 |
| 2923 |
| 2924 geteuid01 |
| 2925 |
| 2926 Basic test for geteuid(2) |
| 2927 |
| 2928 |
| 2929 getgid01 |
| 2930 |
| 2931 Basic test for getgid(2) |
| 2932 |
| 2933 getgid02 |
| 2934 |
| 2935 Testcase to check the basic functionality of getgid(). |
| 2936 |
| 2937 getgid03 |
| 2938 |
| 2939 Testcase to check the basic functionality of getegid(). |
| 2940 |
| 2941 |
| 2942 getpid01 |
| 2943 |
| 2944 Basic test for getpid(2) |
| 2945 |
| 2946 |
| 2947 getpid02 |
| 2948 |
| 2949 Verify that getpid() system call gets the process ID of the of the |
| 2950 calling process. |
| 2951 |
| 2952 |
| 2953 getppid01 |
| 2954 |
| 2955 Testcase to check the basic functionality of the getppid() syscall. |
| 2956 |
| 2957 |
| 2958 getuid01 |
| 2959 |
| 2960 Basic test for getuid(2) |
| 2961 |
| 2962 getuid02 |
| 2963 |
| 2964 Testcase to check the basic functionality of the geteuid() system call. |
| 2965 |
| 2966 getuid03 |
| 2967 |
| 2968 Testcase to check the basic functionality of the getuid() system call. |
| 2969 |
| 2970 nanosleep01 |
| 2971 |
| 2972 Verify that nanosleep() will be successful to suspend the execution |
| 2973 of a process for a specified time. |
| 2974 |
| 2975 nanosleep02 |
| 2976 |
| 2977 Verify that nanosleep() will be successful to suspend the execution |
| 2978 of a process, returns after the receipt of a signal and writes the |
| 2979 remaining sleep time into the structure. |
| 2980 |
| 2981 nanosleep03 |
| 2982 |
| 2983 Verify that nanosleep() will fail to suspend the execution |
| 2984 of a process for a specified time if interrupted by a non-blocked signal
. |
| 2985 |
| 2986 nanosleep04 |
| 2987 |
| 2988 Verify that nanosleep() will fail to suspend the execution |
| 2989 of a process if the specified pause time is invalid. |
| 2990 |
OLD | NEW |