Re: PKCS#11 Function enumeration question

From
Anthony Berglas <>
Date
2018-11-21T09:19:20+00:00
ID
CAFHnfG3+q6zmW=J-JSh=
Thread
Re: PKCS#11 Function enumeration question
In KMIP, all enumerations start from 1. Â

(C's counting from 0 is the work of the devil, a disease that has infected other languages and caused much chaos. But I digress...)

On Wed, Nov 21, 2018 at 7:05 PM Mark Joseph <> wrote:

From Section 6.1.35 PKCS#11 KMIP 2.0 draft 6

PKCS#11 Function Â-- The function to perform. An Enumeration for PKCS#11 defined functions or an Integer for vendor defined function..

Looking at the PKCS#11 2.40 version spec (http://docs.oasis-open.org/pkcs11/pkcs11-base/v2.40/os/pkcs11-base-v2.40-os.html)

SectionÂCK_FUNCTION_LIST; CK_FUNCTION_LIST_PTR; CK_FUNCTION_LIST_PTR_PTR

There is the function list table defined.

typedef struct CK_FUNCTION_LIST {

 CK_VERSION version;

 CK_C_Initialize C_Initialize;

 CK_C_Finalize C_Finalize;

 CK_C_GetInfo C_GetInfo;

 CK_C_GetFunctionList C_GetFunctionList;

ÂÂCK_C_GetSlotList C_GetSlotList;

ÂÂCK_C_GetSlotInfo C_GetSlotInfo;

 CK_C_GetTokenInfo C_GetTokenInfo;

ÂÂCK_C_GetMechanismList C_GetMechanismList;

 CK_C_GetMechanismInfo C_GetMechanismInfo;

 CK_C_InitToken C_InitToken;

 CK_C_InitPIN C_InitPIN;

 CK_C_SetPIN C_SetPIN;

etc...

Is this list zero based or start at one?  The enumeration value for "C_Initialize" is 1 or 0 ? ÂÂ

Best,

Mark Joseph

P6R, Inc

408-205-0361

-- 

Anthony Berglas Ph.D.
Principal Engineer