From: Subrata <sub...@us...> - 2009-03-23 14:46:44
|
Update of /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv14647/ltp/testcases/kernel/syscalls/flock Modified Files: flock01.c flock02.c flock03.c flock04.c flock05.c flock06.c Log Message: Coding Syle Cleanups. Signed-Off-By: <mic...@pe...>. Index: flock05.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock05.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** flock05.c 26 Feb 2009 12:15:38 -0000 1.7 --- flock05.c 23 Mar 2009 13:35:41 -0000 1.8 *************** *** 34,38 **** * Tests to verify flock(2) behavior with different locking combinations along * with LOCK_EX. ! * * Setup: * Setup signal handling. --- 34,38 ---- * Tests to verify flock(2) behavior with different locking combinations along * with LOCK_EX. ! * $ * Setup: * Setup signal handling. *************** *** 59,63 **** * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen * -i n : Execute test n times. * -I x : Execute test for x seconds. --- 59,63 ---- * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen $ * -i n : Execute test n times. * -I x : Execute test for x seconds. *************** *** 68,73 **** ****************************************************************/ - - #include <errno.h> #include <stdio.h> --- 68,71 ---- *************** *** 85,116 **** /* 0 terminated list of expected errnos */ ! int exp_enos[] = {EWOULDBLOCK, EAGAIN, 0}; ! char *TCID = "flock05"; /* Test program identifier */ ! int TST_TOTAL = 2; /* Total number of test cases */ extern int Tst_count; char filename[100]; ! int fd,fd1,status; ! int main(int argc, char **argv) { ! int lc,retval; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } /* global setup */ setup(); - - /* The following loop checks looping state if -i option given */ --- 83,110 ---- /* 0 terminated list of expected errnos */ ! int exp_enos[] = { EWOULDBLOCK, EAGAIN, 0 }; ! char *TCID = "flock05"; /* Test program identifier */ ! int TST_TOTAL = 2; /* Total number of test cases */ extern int Tst_count; char filename[100]; ! int fd, fd1, status; int main(int argc, char **argv) { ! int lc, retval; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} /* global setup */ setup(); /* The following loop checks looping state if -i option given */ *************** *** 119,173 **** /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing Shared lock on Exclusive Locked file */ ! TEST(flock(fd,LOCK_EX)); ! if(TEST_RETURN == 0){ pid = FORK_OR_VFORK(); ! if(pid == 0){ ! fd1 = open(filename, O_RDWR); ! retval= flock(fd1,LOCK_SH|LOCK_NB); ! if(retval == -1){ ! tst_resm(TPASS, "flock() failed to acquire shared lock on an already" ! "exclusive locked file as expected"); ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly PASSED in acquiring shared lock on " ! "an already exclusive locked file"); } - exit(0); - } - else{ - /* parent waiting */ - wait(&status); - } - - /* Testing Exclusive lock on a Exclusive Locked file */ - pid = FORK_OR_VFORK(); ! if(pid == 0){ ! fd1 = open(filename, O_RDWR); ! retval= flock(fd1,LOCK_EX|LOCK_NB); ! if(retval == -1){ ! tst_resm(TPASS, "flock() failed to acquire exclusive lock on existing " ! " exclusive locked file as expected"); ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly passed in acquiring exclusive lock on " ! "an exclusive locked file"); } ! exit(0); ! } ! else{ ! /* parent waiting */ ! wait(&status); ! } ! TEST(flock(fd,LOCK_UN)); ! } ! else{ ! tst_resm(TFAIL,"flock() failed to acquire exclusive lock"); } ! }/* End of TEST_LOOPING */ close(fd); --- 113,167 ---- /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing Shared lock on Exclusive Locked file */ ! TEST(flock(fd, LOCK_EX)); ! if (TEST_RETURN == 0) { pid = FORK_OR_VFORK(); ! if (pid == 0) { ! fd1 = open(filename, O_RDWR); ! retval = flock(fd1, LOCK_SH | LOCK_NB); ! if (retval == -1) { ! tst_resm(TPASS, ! "flock() failed to acquire shared lock on an already" ! "exclusive locked file as expected"); ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly PASSED in acquiring shared lock on " ! "an already exclusive locked file"); ! } ! exit(0); ! } else { ! /* parent waiting */ ! wait(&status); } ! /* Testing Exclusive lock on a Exclusive Locked file */ ! pid = FORK_OR_VFORK(); ! ! if (pid == 0) { ! fd1 = open(filename, O_RDWR); ! retval = flock(fd1, LOCK_EX | LOCK_NB); ! if (retval == -1) { ! tst_resm(TPASS, ! "flock() failed to acquire exclusive lock on existing " ! " exclusive locked file as expected"); ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly passed in acquiring exclusive lock on " ! "an exclusive locked file"); ! } ! exit(0); ! } else { ! /* parent waiting */ ! wait(&status); } ! TEST(flock(fd, LOCK_UN)); ! } else { ! tst_resm(TFAIL, ! "flock() failed to acquire exclusive lock"); } ! } /* End of TEST_LOOPING */ close(fd); *************** *** 175,182 **** cleanup(); return 0; ! /*NOTREACHED*/ ! ! } ! /* --- 169,173 ---- cleanup(); return 0; ! /*NOTREACHED*/} /* *************** *** 184,194 **** * performs all ONE TIME setup for this test */ ! void ! setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); - /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); --- 175,183 ---- * performs all ONE TIME setup for this test */ ! void setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); *************** *** 210,219 **** if (fd == -1) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp dir */ tst_rmdir(); ! /* exit with return code appropriate for results */ tst_exit(); --- 199,208 ---- if (fd == -1) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp dir */ tst_rmdir(); ! /* exit with return code appropriate for results */ tst_exit(); *************** *** 226,231 **** * completion or premature exit */ ! void ! cleanup(void) { /* --- 215,219 ---- * completion or premature exit */ ! void cleanup(void) { /* *************** *** 241,244 **** /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/ ! } --- 229,231 ---- /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/} Index: flock01.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock01.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** flock01.c 26 Feb 2009 12:15:38 -0000 1.4 --- flock01.c 23 Mar 2009 13:35:41 -0000 1.5 *************** *** 34,38 **** * Test to verify flock(2) succeds with all kind of locks. * Intends to provide a limited exposure of system call. ! * * Setup: * Setup signal handling. --- 34,38 ---- * Test to verify flock(2) succeds with all kind of locks. * Intends to provide a limited exposure of system call. ! * $ * Setup: * Setup signal handling. *************** *** 57,61 **** * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen * -i n : Execute test n times. * -I x : Execute test for x seconds. --- 57,61 ---- * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen $ * -i n : Execute test n times. * -I x : Execute test for x seconds. *************** *** 66,71 **** ****************************************************************/ - - #include <errno.h> #include <stdio.h> --- 66,69 ---- *************** *** 79,118 **** /* 0 terminated list of expected errnos */ ! int exp_enos[] = {EWOULDBLOCK, EAGAIN, EINVAL, 0}; ! char *TCID = "flock01"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; int fd; ! struct test_case_t{ int operation; char *opt; ! }test_cases[]={ ! { LOCK_SH, "Shared Lock" }, ! { LOCK_UN, "Unlock" }, ! { LOCK_EX, "Exclusive Lock" }, ! }; int main(int argc, char **argv) { ! int lc,i; /* loop counter */ ! char *msg; /* message returned from parse_opts */ ! /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } /* global setup */ setup(); - - /* The following loop checks looping state if -i option given */ --- 77,112 ---- /* 0 terminated list of expected errnos */ ! int exp_enos[] = { EWOULDBLOCK, EAGAIN, EINVAL, 0 }; ! char *TCID = "flock01"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; int fd; ! struct test_case_t { int operation; char *opt; ! } test_cases[] = { ! { ! LOCK_SH, "Shared Lock"}, { ! LOCK_UN, "Unlock"}, { ! LOCK_EX, "Exclusive Lock"},}; int main(int argc, char **argv) { ! int lc, i; /* loop counter */ ! char *msg; /* message returned from parse_opts */ /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} /* global setup */ setup(); /* The following loop checks looping state if -i option given */ *************** *** 121,145 **** /* reset Tst_count in case we are looping */ Tst_count = 0; ! ! for( i = 0; i< TST_TOTAL; ++i) ! { ! ! /* Testing system call */ ! TEST(flock(fd,test_cases[i].operation)); ! ! if(TEST_RETURN == -1){ ! TEST_ERROR_LOG(TEST_ERRNO); ! tst_resm(TFAIL,"flock() failed to get %s, error number=%d : %s", ! test_cases[i].opt,TEST_ERRNO,strerror(TEST_ERRNO)); ! continue; /*next loop for MTKERNEL */ ! } ! else{ ! tst_resm(TPASS, "flock() succeded with %s, returned error number=%d", ! test_cases[i].opt,TEST_ERRNO); } ! ! } ! ! }/* End of TEST_LOOPING */ close(fd); --- 115,140 ---- /* reset Tst_count in case we are looping */ Tst_count = 0; ! ! for (i = 0; i < TST_TOTAL; ++i) { ! ! /* Testing system call */ ! TEST(flock(fd, test_cases[i].operation)); ! ! if (TEST_RETURN == -1) { ! TEST_ERROR_LOG(TEST_ERRNO); ! tst_resm(TFAIL, ! "flock() failed to get %s, error number=%d : %s", ! test_cases[i].opt, TEST_ERRNO, ! strerror(TEST_ERRNO)); ! continue; /*next loop for MTKERNEL */ ! } else { ! tst_resm(TPASS, ! "flock() succeded with %s, returned error number=%d", ! test_cases[i].opt, TEST_ERRNO); ! } ! } ! ! } /* End of TEST_LOOPING */ close(fd); *************** *** 151,166 **** } - /* * setup() * performs all ONE TIME setup for this test */ ! void ! setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); - /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); --- 146,158 ---- } /* * setup() * performs all ONE TIME setup for this test */ ! void setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); *************** *** 182,194 **** if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp directory */ tst_rmdir(); ! /* exit with resturn code appropriate for result */ tst_exit(); ! } } --- 174,186 ---- if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp directory */ tst_rmdir(); ! /* exit with resturn code appropriate for result */ tst_exit(); ! } } *************** *** 199,204 **** * completion or premature exit */ ! void ! cleanup(void) { /* --- 191,195 ---- * completion or premature exit */ ! void cleanup(void) { /* *************** *** 213,216 **** /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/ ! } --- 204,206 ---- /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/} Index: flock04.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock04.c,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** flock04.c 26 Feb 2009 12:15:38 -0000 1.7 --- flock04.c 23 Mar 2009 13:35:41 -0000 1.8 *************** *** 34,38 **** * Tests to verify flock(2) behavior with different locking combinations along * with LOCK_SH. ! * * Setup: * Setup signal handling. --- 34,38 ---- * Tests to verify flock(2) behavior with different locking combinations along * with LOCK_SH. ! * $ * Setup: * Setup signal handling. *************** *** 59,63 **** * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen * -i n : Execute test n times. * -I x : Execute test for x seconds. --- 59,63 ---- * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen $ * -i n : Execute test n times. * -I x : Execute test for x seconds. *************** *** 68,73 **** ****************************************************************/ - - #include <errno.h> #include <stdio.h> --- 68,71 ---- *************** *** 85,116 **** /* 0 terminated list of expected errnos */ ! int exp_enos[] = {EWOULDBLOCK, EAGAIN, 0}; ! char *TCID = "flock04"; /* Test program identifier */ ! int TST_TOTAL = 2; /* Total number of test cases */ extern int Tst_count; char filename[100]; ! int fd,fd1,status; ! int main(int argc, char **argv) { ! int lc,retval; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } /* global setup */ setup(); - - /* The following loop checks looping state if -i option given */ --- 83,110 ---- /* 0 terminated list of expected errnos */ ! int exp_enos[] = { EWOULDBLOCK, EAGAIN, 0 }; ! char *TCID = "flock04"; /* Test program identifier */ ! int TST_TOTAL = 2; /* Total number of test cases */ extern int Tst_count; char filename[100]; ! int fd, fd1, status; int main(int argc, char **argv) { ! int lc, retval; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} /* global setup */ setup(); /* The following loop checks looping state if -i option given */ *************** *** 119,183 **** /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing Shared lock on Share Locked file */ ! TEST(flock(fd,LOCK_SH)); ! if(TEST_RETURN == 0){ pid = FORK_OR_VFORK(); ! if(pid == 0){ ! fd1 = open(filename, O_RDONLY); ! retval= flock(fd1,LOCK_SH|LOCK_NB); ! if(retval == -1){ ! tst_resm(TFAIL, "flock() FAILED to acquire shared lock on existing " ! "Share Locked file"); ! } ! else{ ! tst_resm(TPASS, "flock() PASSED in acquiring shared lock on " ! "Share Locked file"); } - exit(0); - } - else{ - /* parent waiting */ - wait(&status); - } - ! /* Testing Exclusive lock on a Share Locked file */ ! ! pid = FORK_OR_VFORK(); ! if(pid == 0){ ! fd1 = open(filename, O_RDWR); ! retval= flock(fd1,LOCK_EX|LOCK_NB); ! if(retval == -1){ ! tst_resm(TPASS, "flock() failed to acquire exclusive lock on existing " ! "share locked file as expected"); ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly passed in acquiring exclusive lock on " ! "Share Locked file"); } ! exit(0); ! } ! else{ ! /* parent waiting */ ! wait(&status); ! } ! TEST(flock(fd,LOCK_UN)); ! } ! else{ ! tst_resm(TFAIL, "flock() failed to acquire shared lock"); } ! close(fd); ! close(fd1); ! }/* End of TEST_LOOPING */ cleanup(); return 0; ! /*NOTREACHED*/ ! } ! /* --- 113,174 ---- /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing Shared lock on Share Locked file */ ! TEST(flock(fd, LOCK_SH)); ! if (TEST_RETURN == 0) { pid = FORK_OR_VFORK(); ! if (pid == 0) { ! fd1 = open(filename, O_RDONLY); ! retval = flock(fd1, LOCK_SH | LOCK_NB); ! if (retval == -1) { ! tst_resm(TFAIL, ! "flock() FAILED to acquire shared lock on existing " ! "Share Locked file"); ! } else { ! tst_resm(TPASS, ! "flock() PASSED in acquiring shared lock on " ! "Share Locked file"); ! } ! exit(0); ! } else { ! /* parent waiting */ ! wait(&status); } ! /* Testing Exclusive lock on a Share Locked file */ ! pid = FORK_OR_VFORK(); ! ! if (pid == 0) { ! fd1 = open(filename, O_RDWR); ! retval = flock(fd1, LOCK_EX | LOCK_NB); ! if (retval == -1) { ! tst_resm(TPASS, ! "flock() failed to acquire exclusive lock on existing " ! "share locked file as expected"); ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly passed in acquiring exclusive lock on " ! "Share Locked file"); ! } ! exit(0); ! } else { ! /* parent waiting */ ! wait(&status); } ! TEST(flock(fd, LOCK_UN)); ! } else { ! tst_resm(TFAIL, ! "flock() failed to acquire shared lock"); } ! close(fd); ! close(fd1); ! } /* End of TEST_LOOPING */ cleanup(); return 0; ! /*NOTREACHED*/} /* *************** *** 185,195 **** * performs all ONE TIME setup for this test */ ! void ! setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); - /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); --- 176,184 ---- * performs all ONE TIME setup for this test */ ! void setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); *************** *** 211,220 **** if (fd == -1) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp dir */ tst_rmdir(); ! /* exit with return code appropriate for results */ tst_exit(); --- 200,209 ---- if (fd == -1) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp dir */ tst_rmdir(); ! /* exit with return code appropriate for results */ tst_exit(); *************** *** 227,232 **** * completion or premature exit */ ! void ! cleanup(void) { /* --- 216,220 ---- * completion or premature exit */ ! void cleanup(void) { /* *************** *** 242,245 **** /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/ ! } --- 230,232 ---- /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/} Index: flock02.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock02.c,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** flock02.c 26 Feb 2009 12:15:38 -0000 1.6 --- flock02.c 23 Mar 2009 13:35:41 -0000 1.7 *************** *** 36,40 **** * if the file descriptor is invalid. * 2) flock(2) returns -1 and sets error number to EINVAL ! * if the argument operation does not include LOCK_SH,LOCK_EX,LOCK_UN. * 3) flock(2) returns -1 and sets error number to EINVAL * if an invalid combination of locking modes is used i.e LOCK_SH with LOCK_EX --- 36,40 ---- * if the file descriptor is invalid. * 2) flock(2) returns -1 and sets error number to EINVAL ! * if the argument operation does not include LOCK_SH,LOCK_EX,LOCK_UN.$ * 3) flock(2) returns -1 and sets error number to EINVAL * if an invalid combination of locking modes is used i.e LOCK_SH with LOCK_EX *************** *** 64,68 **** * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen * -i n : Execute test n times. * -I x : Execute test for x seconds. --- 64,68 ---- * -f : Turn off functional testing * -e : Turn on errno logging. ! * -h : Show help screen $ * -i n : Execute test n times. * -I x : Execute test for x seconds. *************** *** 73,78 **** ****************************************************************/ - - #include <errno.h> #include <stdio.h> --- 73,76 ---- *************** *** 86,93 **** /* 0 terminated list of expected errnos */ ! int exp_enos[] = {EBADF,EINVAL,0}; ! char *TCID = "flock02"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; --- 84,91 ---- /* 0 terminated list of expected errnos */ ! int exp_enos[] = { EBADF, EINVAL, 0 }; ! char *TCID = "flock02"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; *************** *** 98,116 **** int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ ! /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } /* global setup */ setup(); - - /* The following loop checks looping state if -i option given */ --- 96,110 ---- int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} /* global setup */ setup(); /* The following loop checks looping state if -i option given */ *************** *** 119,163 **** /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing system call with negative file descriptor */ ! TEST(flock(-1,LOCK_SH)); ! if((TEST_RETURN == -1)&& ! (TEST_ERRNO == EBADF)){ ! tst_resm(TPASS,"flock() shows expected failure,error number=%d : %s", ! TEST_ERRNO,strerror(TEST_ERRNO)); ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly succeds, returned error number=%d",TEST_ERRNO); } /* Test system call with invalid argument */ ! TEST(flock(fd,LOCK_NB)); ! if((TEST_RETURN == -1)&& ! (TEST_ERRNO == EINVAL)){ ! tst_resm(TPASS,"flock() shows expected failure,error number=%d : %s", ! TEST_ERRNO,strerror(TEST_ERRNO)); ! ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly succeds, returned error number=%d",TEST_ERRNO); } ! /* Test system call with invalid combination of arguments */ ! TEST(flock(fd,LOCK_SH|LOCK_EX)); ! if((TEST_RETURN == -1)&& ! (TEST_ERRNO == EINVAL)){ ! tst_resm(TPASS,"flock() shows expected failure with invalid combination of arguments, " ! "error number=%d : %s",TEST_ERRNO,strerror(TEST_ERRNO)); continue; /*next loop for MTKERNEL */ ! } ! else{ ! tst_resm(TFAIL, "flock() unexpectedly succeds, returned error number=%d",TEST_ERRNO); } ! ! }/* End of TEST_LOOPING */ close(fd); --- 113,160 ---- /* reset Tst_count in case we are looping */ Tst_count = 0; ! /* Testing system call with negative file descriptor */ ! TEST(flock(-1, LOCK_SH)); ! if ((TEST_RETURN == -1) && (TEST_ERRNO == EBADF)) { ! tst_resm(TPASS, ! "flock() shows expected failure,error number=%d : %s", ! TEST_ERRNO, strerror(TEST_ERRNO)); ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly succeds, returned error number=%d", ! TEST_ERRNO); } /* Test system call with invalid argument */ ! TEST(flock(fd, LOCK_NB)); ! if ((TEST_RETURN == -1) && (TEST_ERRNO == EINVAL)) { ! tst_resm(TPASS, ! "flock() shows expected failure,error number=%d : %s", ! TEST_ERRNO, strerror(TEST_ERRNO)); ! ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly succeds, returned error number=%d", ! TEST_ERRNO); } ! /* Test system call with invalid combination of arguments */ ! TEST(flock(fd, LOCK_SH | LOCK_EX)); ! if ((TEST_RETURN == -1) && (TEST_ERRNO == EINVAL)) { ! tst_resm(TPASS, ! "flock() shows expected failure with invalid combination of arguments, " ! "error number=%d : %s", TEST_ERRNO, ! strerror(TEST_ERRNO)); continue; /*next loop for MTKERNEL */ ! } else { ! tst_resm(TFAIL, ! "flock() unexpectedly succeds, returned error number=%d", ! TEST_ERRNO); } ! } /* End of TEST_LOOPING */ close(fd); *************** *** 169,184 **** } - /* * setup() * performs all ONE TIME setup for this test */ ! void ! setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); - /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); --- 166,178 ---- } /* * setup() * performs all ONE TIME setup for this test */ ! void setup(void) { /* capture signals */ tst_sig(FORK, DEF_HANDLER, cleanup); /* Set up the expected error numbers for -e option */ TEST_EXP_ENOS(exp_enos); *************** *** 200,204 **** if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; --- 194,198 ---- if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; *************** *** 216,221 **** * completion or premature exit */ ! void ! cleanup(void) { /* --- 210,214 ---- * completion or premature exit */ ! void cleanup(void) { /* *************** *** 230,233 **** /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/ ! } --- 223,225 ---- /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/} Index: flock03.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock03.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** flock03.c 26 Feb 2009 12:15:38 -0000 1.9 --- flock03.c 23 Mar 2009 13:35:41 -0000 1.10 *************** *** 61,66 **** ****************************************************************/ - - #include <stdio.h> #include <errno.h> --- 61,64 ---- *************** *** 79,89 **** #ifdef UCLINUX static int fd_uc; ! void childfunc_uc() { childfunc(fd_uc); } #endif ! char *TCID = "flock03"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; --- 77,88 ---- #ifdef UCLINUX static int fd_uc; ! void childfunc_uc() ! { childfunc(fd_uc); } #endif ! char *TCID = "flock03"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; *************** *** 91,108 **** int main(int argc, char **argv) { ! int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; int status; ! int fd; /* for opening the temporary file */ ! /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } ! #ifdef UCLINUX maybe_run_child(&childfunc_uc, "ds", &fd_uc, filename); --- 90,104 ---- int main(int argc, char **argv) { ! int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ pid_t pid; int status; ! int fd; /* for opening the temporary file */ /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} #ifdef UCLINUX maybe_run_child(&childfunc_uc, "ds", &fd_uc, filename); *************** *** 118,132 **** Tst_count = 0; ! /* PARENT */ fd = open(filename, O_RDWR); ! if(fd == -1) ! tst_brkm(TFAIL, cleanup, "parent failed to open the" ! "file, errno %d", errno); pid = FORK_OR_VFORK(); ! if(pid == -1) tst_brkm(TFAIL, cleanup, "fork() failed, errno %d", ! errno); ! if(pid == 0) { #ifdef UCLINUX if (self_exec(argv[0], "ds", fd, filename) < 0) --- 114,128 ---- Tst_count = 0; ! /* PARENT */ fd = open(filename, O_RDWR); ! if (fd == -1) ! tst_brkm(TFAIL, cleanup, "parent failed to open the" ! "file, errno %d", errno); pid = FORK_OR_VFORK(); ! if (pid == -1) tst_brkm(TFAIL, cleanup, "fork() failed, errno %d", ! errno); ! if (pid == 0) { #ifdef UCLINUX if (self_exec(argv[0], "ds", fd, filename) < 0) *************** *** 139,149 **** TEST(flock(fd, LOCK_EX | LOCK_NB)); ! if(TEST_RETURN != 0) ! tst_resm(TFAIL, "Parent: Initial attempt to flock() failed, " ! "errno %d",TEST_ERRNO); else ! tst_resm(TPASS, "Parent: Initial attempt to flock() passed"); ! if((waitpid(pid, &status, 0)) < 0) { tst_resm(TFAIL, "wait() failed"); continue; --- 135,147 ---- TEST(flock(fd, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN != 0) ! tst_resm(TFAIL, ! "Parent: Initial attempt to flock() failed, " ! "errno %d", TEST_ERRNO); else ! tst_resm(TPASS, ! "Parent: Initial attempt to flock() passed"); ! if ((waitpid(pid, &status, 0)) < 0) { tst_resm(TFAIL, "wait() failed"); continue; *************** *** 156,160 **** close(fd); ! }/* End of TEST_LOOPING */ cleanup(); --- 154,158 ---- close(fd); ! } /* End of TEST_LOOPING */ cleanup(); *************** *** 172,179 **** fd2 = open(filename, O_RDWR); ! if(fd2 == -1) tst_brkm(TFAIL, cleanup, "child failed to open the" ! "file, errno %d", errno); ! if(flock(fd2, LOCK_EX | LOCK_NB) != -1) tst_resm(TFAIL, "Child: The file was not already locked"); --- 170,177 ---- fd2 = open(filename, O_RDWR); ! if (fd2 == -1) tst_brkm(TFAIL, cleanup, "child failed to open the" ! "file, errno %d", errno); ! if (flock(fd2, LOCK_EX | LOCK_NB) != -1) tst_resm(TFAIL, "Child: The file was not already locked"); *************** *** 182,195 **** * unlock. */ ! if(TEST_RETURN == -1) ! tst_resm(TFAIL, "Child: Unable to unlock file locked by parent, " ! "errno %d", TEST_ERRNO); else tst_resm(TPASS, "Child: Unlocked file locked by parent"); TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if(TEST_RETURN == -1) tst_resm(TFAIL, "Child: Unable to relock file after unlocking, " ! "errno %d", TEST_ERRNO); else tst_resm(TPASS, "Child: flock after unlocking passed"); --- 180,194 ---- * unlock. */ ! if (TEST_RETURN == -1) ! tst_resm(TFAIL, ! "Child: Unable to unlock file locked by parent, " ! "errno %d", TEST_ERRNO); else tst_resm(TPASS, "Child: Unlocked file locked by parent"); TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN == -1) tst_resm(TFAIL, "Child: Unable to relock file after unlocking, " ! "errno %d", TEST_ERRNO); else tst_resm(TPASS, "Child: flock after unlocking passed"); *************** *** 203,207 **** } - /* * setup() --- 202,205 ---- *************** *** 230,234 **** if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; --- 228,232 ---- if (fd < 0) { tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; *************** *** 260,263 **** /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/ ! } --- 258,260 ---- /* exit with return code appropriate for results */ tst_exit(); ! /*NOTREACHED*/} Index: flock06.c =================================================================== RCS file: /cvsroot/ltp/ltp/testcases/kernel/syscalls/flock/flock06.c,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** flock06.c 26 Feb 2009 12:15:38 -0000 1.4 --- flock06.c 23 Mar 2009 13:35:41 -0000 1.5 *************** *** 60,65 **** ****************************************************************/ - - #include <stdio.h> #include <errno.h> --- 60,63 ---- *************** *** 75,81 **** void cleanup(void); ! ! char *TCID = "flock06"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; --- 73,78 ---- void cleanup(void); ! char *TCID = "flock06"; /* Test program identifier */ ! int TST_TOTAL = 3; /* Total number of test cases */ extern int Tst_count; char filename[100]; *************** *** 83,153 **** int main(int argc, char **argv) { ! int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ ! /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *)NULL, NULL)) != ! (char *) NULL) { ! tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/ ! } ! setup(); ! /* The following loop checks looping state if -i option given */ ! for (lc = 0; TEST_LOOPING(lc); lc++) { ! int fd1, fd2; ! /* reset Tst_count in case we are looping */ ! Tst_count = 0; ! fd1 = open(filename, O_RDWR); ! if (fd1 == -1) ! tst_brkm(TFAIL, cleanup, "failed to open the" ! "file, errno %d", errno); ! TEST(flock(fd1, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN != 0) ! tst_resm(TFAIL, "First attempt to flock() failed, " ! "errno %d",TEST_ERRNO); ! else ! tst_resm(TPASS, "First attempt to flock() passed"); ! fd2 = open(filename, O_RDWR); ! if (fd2 == -1) ! tst_brkm(TFAIL, cleanup, "failed to open the" ! "file, errno %d", errno); ! TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN == -1) ! tst_resm(TPASS, "Second attempt to flock() denied"); ! else ! tst_resm(TFAIL, "Second attempt to flock() succeeded!"); ! TEST(flock(fd1, LOCK_UN)); ! if (TEST_RETURN == -1) ! tst_resm(TFAIL, "Failed to unlock fd1, errno %d", ! TEST_ERRNO); ! else ! tst_resm(TPASS, "Unlocked fd1"); ! TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN == -1) ! tst_resm(TFAIL, "Third attempt to flock() denied!"); ! else ! tst_resm(TPASS, "Third attempt to flock() succeeded"); ! close(fd1); ! close(fd2); ! }/* End of TEST_LOOPING */ ! cleanup(); ! return 0; } - /* * setup() --- 80,148 ---- int main(int argc, char **argv) { ! int lc; /* loop counter */ ! char *msg; /* message returned from parse_opts */ ! /* parse standard options */ ! if ((msg = parse_opts(argc, argv, (option_t *) NULL, NULL)) != ! (char *)NULL) { ! tst_brkm(TBROK, cleanup, "OPTION PARSING ERROR - %s", msg); ! /*NOTREACHED*/} ! setup(); ! /* The following loop checks looping state if -i option given */ ! for (lc = 0; TEST_LOOPING(lc); lc++) { ! int fd1, fd2; ! /* reset Tst_count in case we are looping */ ! Tst_count = 0; ! fd1 = open(filename, O_RDWR); ! if (fd1 == -1) ! tst_brkm(TFAIL, cleanup, "failed to open the" ! "file, errno %d", errno); ! TEST(flock(fd1, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN != 0) ! tst_resm(TFAIL, "First attempt to flock() failed, " ! "errno %d", TEST_ERRNO); ! else ! tst_resm(TPASS, "First attempt to flock() passed"); ! fd2 = open(filename, O_RDWR); ! if (fd2 == -1) ! tst_brkm(TFAIL, cleanup, "failed to open the" ! "file, errno %d", errno); ! TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN == -1) ! tst_resm(TPASS, "Second attempt to flock() denied"); ! else ! tst_resm(TFAIL, "Second attempt to flock() succeeded!"); ! TEST(flock(fd1, LOCK_UN)); ! if (TEST_RETURN == -1) ! tst_resm(TFAIL, "Failed to unlock fd1, errno %d", ! TEST_ERRNO); ! else ! tst_resm(TPASS, "Unlocked fd1"); ! TEST(flock(fd2, LOCK_EX | LOCK_NB)); ! if (TEST_RETURN == -1) ! tst_resm(TFAIL, "Third attempt to flock() denied!"); ! else ! tst_resm(TPASS, "Third attempt to flock() succeeded"); ! close(fd1); ! close(fd2); ! } /* End of TEST_LOOPING */ ! cleanup(); ! return 0; } /* * setup() *************** *** 156,189 **** void setup(void) { ! int fd; ! /* capture signals */ ! tst_sig(FORK, DEF_HANDLER, cleanup); ! /* Pause if that option was specified ! * TEST_PAUSE contains the code to fork the test with the -i option. ! * You want to make sure you do this before you create your temporary ! * directory. ! */ ! TEST_PAUSE; ! /* Create a unique temporary directory and chdir() to it. */ ! tst_tmpdir(); ! sprintf(filename, "flock06.%d", getpid()); ! /* creating temporary file */ ! fd = creat(filename, 0666); ! if (fd < 0) { ! tst_resm(TFAIL, "creating a new file failed"); ! ! TEST_CLEANUP; ! /* Removing temp dir */ ! tst_rmdir(); ! /* exit with return code appropriate for result */ ! tst_exit(); ! } ! close(fd); } --- 151,184 ---- void setup(void) { ! int fd; ! /* capture signals */ ! tst_sig(FORK, DEF_HANDLER, cleanup); ! /* Pause if that option was specified ! * TEST_PAUSE contains the code to fork the test with the -i option. ! * You want to make sure you do this before you create your temporary ! * directory. ! */ ! TEST_PAUSE; ! /* Create a unique temporary directory and chdir() to it. */ ! tst_tmpdir(); ! sprintf(filename, "flock06.%d", getpid()); ! /* creating temporary file */ ! fd = creat(filename, 0666); ! if (fd < 0) { ! tst_resm(TFAIL, "creating a new file failed"); ! TEST_CLEANUP; ! /* Removing temp dir */ ! tst_rmdir(); ! ! /* exit with return code appropriate for result */ ! tst_exit(); ! } ! close(fd); } *************** *** 195,209 **** void cleanup(void) { ! /* ! * print timing stats if that option was specified. ! * print errno log if that option was specified. ! */ ! TEST_CLEANUP; ! unlink(filename); ! tst_rmdir(); ! /* exit with return code appropriate for results */ ! tst_exit(); ! /*NOTREACHED*/ ! } --- 190,203 ---- void cleanup(void) { ! /* ! * print timing stats if that option was specified. ! * print errno log if that option was specified. ! */ ! TEST_CLEANUP; ! unlink(filename); ! tst_rmdir(); ! /* exit with return code appropriate for results */ ! tst_exit(); ! /*NOTREACHED*/} |