PKCS#11 COVERAGE This is the test coverage of the p11-tests tool of the PKCS#11 interface. We're anxious to complete this, if you have patches please do contribute. C_Finalize - Normal call - Double finalize in a row C_GetFunctionList - See if returns same data as library entry point C_GetInfo - NULL argument - Normal call - Cryptoki version matches that in library entry point data - Space padded strings in CK_INFO - No flags set C_GetMechanismInfo - Invalid mechanism - Null arguments - Invalid slot id - Normal call C_GetMechanismList - Null arguments - Without buffer - Zero count but buffer present - Low count but buffer present C_GetSlotInfo - NULL argument - Normal call - Space padded CK_SLOT_INFO fields - CK_SLOT_INFO flags are from valid set - Track CKF_TOKEN_PRESENT flag and compare to C_GetSlotList(TRUE) C_GetSlotList - NULL arguments - Retrieving the count - Passing buffer space along with zero count. - Passing buffer space along with low count. - Passing too much buffer space. C_GetTokenInfo - Null arguments - Normal call - Space padded CK_TOKEN_INFO fields - CK_TOKEN_INFO flags are from valid set - Validate token time when CKF_CLOCK_ON_TOKEN - Calling on slot without token C_Initialize - Normal call - Locking: no threads - Locking: os locking - Locking: app locking - Locking: either locking - Calls without initializing - NULL argument - Multiple initialize with C_Finalize between - Double initialize in a row C_WaitForSlotEvent - Not Implemented