michael@0: # michael@0: # This file defines the tests for multiple initialization of NSS in michael@0: # different libraries. michael@0: # michael@0: # Test description lines control the parameters for the multinit test program. michael@0: # michael@0: # Init order: Upper case/digits indicate an init call, lower case indicate michael@0: # a shutdown call. michael@0: # M,m-Main 1,i-lib1, 2,z-lib2 michael@0: # Main calls the traditional NSS init calls (simulating the main application) michael@0: # lib1 and lib2 call NSS_InitContext(). michael@0: # michael@0: # All functions call NSS_ShutdownContext unless 'main shutdown type' is set to michael@0: # 'old', in which case main will call the traditional NSS_Shutdown(). michael@0: # michael@0: # Commands: comma separated list of commands to execute. These simulate michael@0: # executing commands from either a library or main. In each cycle, multinit michael@0: # will do one initialize or shutdown, then execute all the commands michael@0: # for any of the libraries or main that is currently initialized. The same michael@0: # command is executed in each cycle that it's library is initialized. michael@0: # michael@0: # Commands are given in order or 'main','lib1','lib2'. Valid commands are: michael@0: # none - don't execute any commands for this library (or main). michael@0: # list_certs - list all the visible certs in the system. michael@0: # list_slots - list all the slots in the system. michael@0: # key_slot - list the current default key slot. michael@0: # michael@0: # Main Shutdown Type - which kind of shutdown does main call. See Init order. michael@0: # michael@0: # Directories - which directory should each init open. Listed in order of: michael@0: # (main init directory),(lib1 init directory),(lib2 init directory). michael@0: # michael@0: # RO - Which databases to open up read only, valid values are: michael@0: # all - main, lib1, and lib2 michael@0: # none - open all directories R/W michael@0: # libs - lib1 & lib2 michael@0: # main, lib1, lib2 - their respective directories only. michael@0: # michael@0: # Test description lines are followed by their expected summary output. michael@0: # output lines are of the form: michael@0: # michael@0: # tag expected output. michael@0: # michael@0: # where tag is one of michael@0: # all - applies to all database types michael@0: # sql - expected output for sql databases michael@0: # dbm - expected output for dbm databases michael@0: # michael@0: # if you do not specify all, you must have one line each for sql and dbm michael@0: # michael@0: # main michael@0: # init main,lib1,lib2 shutdown main,lib1,lib2 Test Case name michael@0: # order commands type directories RO michael@0: # ------ ------------------------ --- ----------- ----- -------------- michael@0: 1M2zmi list_slots,list_certs,none new dir1,dir2,dir3 all Progressive init michael@0: all 1CuuuCpppCpppCCTCCMSttS
ttSttCuuuCpupupuCpppCpppCCTCC2SttSttS
ttSttCuuuCpupupuCpupupuCpppCCTCCZSttSttS
ttSttCuuuCpupupuCpupupuCpppCCTCCNCuuuCpupupuCpupupuCpppCCTCCI michael@0: 1M2zmi list_certs,none,none old dir1,dir2,dir3 all Progressive init - oldStyle michael@0: all 1MCuuuCpupupuCpppCpppCCTCC2CuuuCpupupuCpupupuCpppCCTCCZCuuuCpupupuCpupupuCpppCCTCCNIE0xffffe09a michael@0: 12Mizm none,list_certs,none new dir1,dir2,dir3 all Sequenced init michael@0: all 1CuuuCpppCpppCCTCC2CuuuCpupupuCpppCCTCCMCuuuCpupupuCpupupuCpppCCTCCIZN michael@0: 12Mizm none,list_certs,none old dir1,dir2,dir3 all Sequenced init - old Style michael@0: all 1CuuuCpppCpppCCTCC2CuuuCpupupuCpppCCTCCMCuuuCpupupuCpupupuCpppCCTCCIZN michael@0: 1Mi2mz none,list_certs,list_slots new dir1,dir2,dir3 all Overlap shutdown michael@0: all 1CuuuCpppCpppCCTCCMCuuuCpupupuCpppCpppCCTCCI2SttSttS
ttSttNSttSttS
ttSttZ michael@0: 1Mi2mz none,key_slot,none new dir1,dir2,dir3 all Keyslot test michael@0: all 1SttMS
ttI2NZ michael@0: M12miz none,key_slot,none new dir1,dir2,dir3 all Main init first michael@0: all M1S
tt2S
ttNS
ttIZ michael@0: M12miz key_slot,none,none old dir1,dir2,dir3 all Main init first - old Style michael@0: all MS
tt1S
tt2S
ttNIE0xffffe09aZE0xffffe09a michael@0: M12miz list_slots,none,none new dir1,dir1,dir2 all Loading the same directory twice michael@0: all MSttS
tt1SttS
tt2SttSttS
ttNIZ michael@0: M12miz list_slots,none,none new dir1,dir1,dir2 libs Loading the same directory twice - r/w then ro michael@0: all MSttS
tf1SttS
tf2SttSttS
tfNIZ michael@0: M12miz list_slots,none,none new dir1,dir1,dir2 main Loading the same directory twice - ro then r/w michael@0: sql MSttS
tt1SttStfS
tt2SttStfStfS
ttNIZ michael@0: dbm MSttS
tt1SttS
tt2SttStfS
ttNIZ michael@0: M12miM1zim key_slot,none,none old dir1,dir2,dir3 all Properly detect shutdown of a closed handle michael@0: all MS
tt1S
tt2S
ttNIE0xffffe09aMS
tt1S
ttZE0xffffe09aS
ttIS
ttN