/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#include "pk11table.h"

const char *_valueString[] = {
    "None",
    "Variable",
    "CK_ULONG",
    "Data",
    "UTF8",
    "CK_INFO",
    "CK_SLOT_INFO",
    "CK_TOKEN_INFO",
    "CK_SESSION_INFO",
    "CK_ATTRIBUTE",
    "CK_MECHANISM",
    "CK_MECHANISM_INFO",
    "CK_C_INITIALIZE_ARGS",
    "CK_FUNCTION_LIST"
};

const char **valueString = &_valueString[0];
const int valueCount = sizeof(_valueString) / sizeof(_valueString[0]);

const char *_constTypeString[] = {
    "None",
    "Bool",
    "InfoFlags",
    "SlotFlags",
    "TokenFlags",
    "SessionFlags",
    "MechanismFlags",
    "InitializeFlags",
    "Users",
    "SessionState",
    "Object",
    "Hardware",
    "KeyType",
    "CertificateType",
    "Attribute",
    "Mechanism",
    "Result",
    "Trust",
    "AvailableSizes",
    "CurrentSize"
};

const char **constTypeString = &_constTypeString[0];
const int constTypeCount = sizeof(_constTypeString) / sizeof(_constTypeString[0]);

#define mkEntry(x, t)              \
    {                              \
        #x, x, Const##t, ConstNone \
    }
#define mkEntry2(x, t, t2)         \
    {                              \
        #x, x, Const##t, Const##t2 \
    }

const Constant _consts[] = {
    mkEntry(CK_FALSE, Bool),
    mkEntry(CK_TRUE, Bool),

    mkEntry(CKF_TOKEN_PRESENT, SlotFlags),
    mkEntry(CKF_REMOVABLE_DEVICE, SlotFlags),
    mkEntry(CKF_HW_SLOT, SlotFlags),

    mkEntry(CKF_RNG, TokenFlags),
    mkEntry(CKF_WRITE_PROTECTED, TokenFlags),
    mkEntry(CKF_LOGIN_REQUIRED, TokenFlags),
    mkEntry(CKF_USER_PIN_INITIALIZED, TokenFlags),
    mkEntry(CKF_RESTORE_KEY_NOT_NEEDED, TokenFlags),
    mkEntry(CKF_CLOCK_ON_TOKEN, TokenFlags),
    mkEntry(CKF_PROTECTED_AUTHENTICATION_PATH, TokenFlags),
    mkEntry(CKF_DUAL_CRYPTO_OPERATIONS, TokenFlags),
    mkEntry(CKF_TOKEN_INITIALIZED, TokenFlags),
    mkEntry(CKF_SECONDARY_AUTHENTICATION, TokenFlags),
    mkEntry(CKF_USER_PIN_COUNT_LOW, TokenFlags),
    mkEntry(CKF_USER_PIN_FINAL_TRY, TokenFlags),
    mkEntry(CKF_USER_PIN_LOCKED, TokenFlags),
    mkEntry(CKF_USER_PIN_TO_BE_CHANGED, TokenFlags),
    mkEntry(CKF_SO_PIN_COUNT_LOW, TokenFlags),
    mkEntry(CKF_SO_PIN_FINAL_TRY, TokenFlags),
    mkEntry(CKF_SO_PIN_LOCKED, TokenFlags),
    mkEntry(CKF_SO_PIN_TO_BE_CHANGED, TokenFlags),

    mkEntry(CKF_RW_SESSION, SessionFlags),
    mkEntry(CKF_SERIAL_SESSION, SessionFlags),

    mkEntry(CKF_HW, MechanismFlags),
    mkEntry(CKF_ENCRYPT, MechanismFlags),
    mkEntry(CKF_DECRYPT, MechanismFlags),
    mkEntry(CKF_DIGEST, MechanismFlags),
    mkEntry(CKF_SIGN, MechanismFlags),
    mkEntry(CKF_SIGN_RECOVER, MechanismFlags),
    mkEntry(CKF_VERIFY, MechanismFlags),
    mkEntry(CKF_VERIFY_RECOVER, MechanismFlags),
    mkEntry(CKF_GENERATE, MechanismFlags),
    mkEntry(CKF_GENERATE_KEY_PAIR, MechanismFlags),
    mkEntry(CKF_WRAP, MechanismFlags),
    mkEntry(CKF_UNWRAP, MechanismFlags),
    mkEntry(CKF_DERIVE, MechanismFlags),
    mkEntry(CKF_EC_FP, MechanismFlags),
    mkEntry(CKF_EC_F_2M, MechanismFlags),
    mkEntry(CKF_EC_ECPARAMETERS, MechanismFlags),
    mkEntry(CKF_EC_NAMEDCURVE, MechanismFlags),
    mkEntry(CKF_EC_UNCOMPRESS, MechanismFlags),
    mkEntry(CKF_EC_COMPRESS, MechanismFlags),

    mkEntry(CKF_LIBRARY_CANT_CREATE_OS_THREADS, InitializeFlags),
    mkEntry(CKF_OS_LOCKING_OK, InitializeFlags),

    mkEntry(CKU_SO, Users),
    mkEntry(CKU_USER, Users),

    mkEntry(CKS_RO_PUBLIC_SESSION, SessionState),
    mkEntry(CKS_RO_USER_FUNCTIONS, SessionState),
    mkEntry(CKS_RW_PUBLIC_SESSION, SessionState),
    mkEntry(CKS_RW_USER_FUNCTIONS, SessionState),
    mkEntry(CKS_RW_SO_FUNCTIONS, SessionState),

    mkEntry(CKO_DATA, Object),
    mkEntry(CKO_CERTIFICATE, Object),
    mkEntry(CKO_PUBLIC_KEY, Object),
    mkEntry(CKO_PRIVATE_KEY, Object),
    mkEntry(CKO_SECRET_KEY, Object),
    mkEntry(CKO_HW_FEATURE, Object),
    mkEntry(CKO_DOMAIN_PARAMETERS, Object),
    mkEntry(CKO_KG_PARAMETERS, Object),
    mkEntry(CKO_NSS_CRL, Object),
    mkEntry(CKO_NSS_SMIME, Object),
    mkEntry(CKO_NSS_TRUST, Object),
    mkEntry(CKO_NSS_BUILTIN_ROOT_LIST, Object),

    mkEntry(CKH_MONOTONIC_COUNTER, Hardware),
    mkEntry(CKH_CLOCK, Hardware),

    mkEntry(CKK_RSA, KeyType),
    mkEntry(CKK_DSA, KeyType),
    mkEntry(CKK_DH, KeyType),
    mkEntry(CKK_ECDSA, KeyType),
    mkEntry(CKK_EC, KeyType),
    mkEntry(CKK_X9_42_DH, KeyType),
    mkEntry(CKK_KEA, KeyType),
    mkEntry(CKK_GENERIC_SECRET, KeyType),
    mkEntry(CKK_RC2, KeyType),
    mkEntry(CKK_RC4, KeyType),
    mkEntry(CKK_DES, KeyType),
    mkEntry(CKK_DES2, KeyType),
    mkEntry(CKK_DES3, KeyType),
    mkEntry(CKK_CAST, KeyType),
    mkEntry(CKK_CAST3, KeyType),
    mkEntry(CKK_CAST5, KeyType),
    mkEntry(CKK_CAST128, KeyType),
    mkEntry(CKK_RC5, KeyType),
    mkEntry(CKK_IDEA, KeyType),
    mkEntry(CKK_SKIPJACK, KeyType),
    mkEntry(CKK_BATON, KeyType),
    mkEntry(CKK_JUNIPER, KeyType),
    mkEntry(CKK_CDMF, KeyType),
    mkEntry(CKK_AES, KeyType),
    mkEntry(CKK_CAMELLIA, KeyType),
    mkEntry(CKK_NSS_PKCS8, KeyType),

    mkEntry(CKC_X_509, CertType),
    mkEntry(CKC_X_509_ATTR_CERT, CertType),

    mkEntry2(CKA_CLASS, Attribute, Object),
    mkEntry2(CKA_TOKEN, Attribute, Bool),
    mkEntry2(CKA_PRIVATE, Attribute, Bool),
    mkEntry2(CKA_LABEL, Attribute, None),
    mkEntry2(CKA_APPLICATION, Attribute, None),
    mkEntry2(CKA_VALUE, Attribute, None),
    mkEntry2(CKA_OBJECT_ID, Attribute, None),
    mkEntry2(CKA_CERTIFICATE_TYPE, Attribute, CertType),
    mkEntry2(CKA_ISSUER, Attribute, None),
    mkEntry2(CKA_SERIAL_NUMBER, Attribute, None),
    mkEntry2(CKA_AC_ISSUER, Attribute, None),
    mkEntry2(CKA_OWNER, Attribute, None),
    mkEntry2(CKA_ATTR_TYPES, Attribute, None),
    mkEntry2(CKA_TRUSTED, Attribute, Bool),
    mkEntry2(CKA_KEY_TYPE, Attribute, KeyType),
    mkEntry2(CKA_SUBJECT, Attribute, None),
    mkEntry2(CKA_ID, Attribute, None),
    mkEntry2(CKA_SENSITIVE, Attribute, Bool),
    mkEntry2(CKA_ENCRYPT, Attribute, Bool),
    mkEntry2(CKA_DECRYPT, Attribute, Bool),
    mkEntry2(CKA_WRAP, Attribute, Bool),
    mkEntry2(CKA_UNWRAP, Attribute, Bool),
    mkEntry2(CKA_SIGN, Attribute, Bool),
    mkEntry2(CKA_SIGN_RECOVER, Attribute, Bool),
    mkEntry2(CKA_VERIFY, Attribute, Bool),
    mkEntry2(CKA_VERIFY_RECOVER, Attribute, Bool),
    mkEntry2(CKA_DERIVE, Attribute, Bool),
    mkEntry2(CKA_START_DATE, Attribute, None),
    mkEntry2(CKA_END_DATE, Attribute, None),
    mkEntry2(CKA_MODULUS, Attribute, None),
    mkEntry2(CKA_MODULUS_BITS, Attribute, None),
    mkEntry2(CKA_PUBLIC_EXPONENT, Attribute, None),
    mkEntry2(CKA_PRIVATE_EXPONENT, Attribute, None),
    mkEntry2(CKA_PRIME_1, Attribute, None),
    mkEntry2(CKA_PRIME_2, Attribute, None),
    mkEntry2(CKA_EXPONENT_1, Attribute, None),
    mkEntry2(CKA_EXPONENT_2, Attribute, None),
    mkEntry2(CKA_COEFFICIENT, Attribute, None),
    mkEntry2(CKA_PRIME, Attribute, None),
    mkEntry2(CKA_SUBPRIME, Attribute, None),
    mkEntry2(CKA_BASE, Attribute, None),
    mkEntry2(CKA_PRIME_BITS, Attribute, None),
    mkEntry2(CKA_SUB_PRIME_BITS, Attribute, None),
    mkEntry2(CKA_VALUE_BITS, Attribute, None),
    mkEntry2(CKA_VALUE_LEN, Attribute, None),
    mkEntry2(CKA_EXTRACTABLE, Attribute, Bool),
    mkEntry2(CKA_LOCAL, Attribute, Bool),
    mkEntry2(CKA_NEVER_EXTRACTABLE, Attribute, Bool),
    mkEntry2(CKA_ALWAYS_SENSITIVE, Attribute, Bool),
    mkEntry2(CKA_KEY_GEN_MECHANISM, Attribute, Mechanism),
    mkEntry2(CKA_MODIFIABLE, Attribute, Bool),
    mkEntry2(CKA_ECDSA_PARAMS, Attribute, None),
    mkEntry2(CKA_EC_PARAMS, Attribute, None),
    mkEntry2(CKA_EC_POINT, Attribute, None),
    mkEntry2(CKA_SECONDARY_AUTH, Attribute, None),
    mkEntry2(CKA_AUTH_PIN_FLAGS, Attribute, None),
    mkEntry2(CKA_HW_FEATURE_TYPE, Attribute, Hardware),
    mkEntry2(CKA_RESET_ON_INIT, Attribute, Bool),
    mkEntry2(CKA_HAS_RESET, Attribute, Bool),
    mkEntry2(CKA_NSS_URL, Attribute, None),
    mkEntry2(CKA_NSS_EMAIL, Attribute, None),
    mkEntry2(CKA_NSS_SMIME_INFO, Attribute, None),
    mkEntry2(CKA_NSS_SMIME_TIMESTAMP, Attribute, None),
    mkEntry2(CKA_NSS_PKCS8_SALT, Attribute, None),
    mkEntry2(CKA_NSS_PASSWORD_CHECK, Attribute, None),
    mkEntry2(CKA_NSS_EXPIRES, Attribute, None),
    mkEntry2(CKA_NSS_KRL, Attribute, None),
    mkEntry2(CKA_NSS_PQG_COUNTER, Attribute, None),
    mkEntry2(CKA_NSS_PQG_SEED, Attribute, None),
    mkEntry2(CKA_NSS_PQG_H, Attribute, None),
    mkEntry2(CKA_NSS_PQG_SEED_BITS, Attribute, None),
    mkEntry2(CKA_TRUST_DIGITAL_SIGNATURE, Attribute, Trust),
    mkEntry2(CKA_TRUST_NON_REPUDIATION, Attribute, Trust),
    mkEntry2(CKA_TRUST_KEY_ENCIPHERMENT, Attribute, Trust),
    mkEntry2(CKA_TRUST_DATA_ENCIPHERMENT, Attribute, Trust),
    mkEntry2(CKA_TRUST_KEY_AGREEMENT, Attribute, Trust),
    mkEntry2(CKA_TRUST_KEY_CERT_SIGN, Attribute, Trust),
    mkEntry2(CKA_TRUST_CRL_SIGN, Attribute, Trust),
    mkEntry2(CKA_TRUST_SERVER_AUTH, Attribute, Trust),
    mkEntry2(CKA_TRUST_CLIENT_AUTH, Attribute, Trust),
    mkEntry2(CKA_TRUST_CODE_SIGNING, Attribute, Trust),
    mkEntry2(CKA_TRUST_EMAIL_PROTECTION, Attribute, Trust),
    mkEntry2(CKA_TRUST_IPSEC_END_SYSTEM, Attribute, Trust),
    mkEntry2(CKA_TRUST_IPSEC_TUNNEL, Attribute, Trust),
    mkEntry2(CKA_TRUST_IPSEC_USER, Attribute, Trust),
    mkEntry2(CKA_TRUST_TIME_STAMPING, Attribute, Trust),
    mkEntry2(CKA_CERT_SHA1_HASH, Attribute, None),
    mkEntry2(CKA_CERT_MD5_HASH, Attribute, None),
    mkEntry2(CKA_NETSCAPE_DB, Attribute, None),
    mkEntry2(CKA_NETSCAPE_TRUST, Attribute, Trust),

    mkEntry(CKM_RSA_PKCS, Mechanism),
    mkEntry(CKM_RSA_9796, Mechanism),
    mkEntry(CKM_RSA_X_509, Mechanism),
    mkEntry(CKM_RSA_PKCS_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_MD2_RSA_PKCS, Mechanism),
    mkEntry(CKM_MD5_RSA_PKCS, Mechanism),
    mkEntry(CKM_SHA1_RSA_PKCS, Mechanism),
    mkEntry(CKM_RIPEMD128_RSA_PKCS, Mechanism),
    mkEntry(CKM_RIPEMD160_RSA_PKCS, Mechanism),
    mkEntry(CKM_RSA_PKCS_OAEP, Mechanism),
    mkEntry(CKM_RSA_X9_31_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_RSA_X9_31, Mechanism),
    mkEntry(CKM_SHA1_RSA_X9_31, Mechanism),
    mkEntry(CKM_DSA_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_DSA, Mechanism),
    mkEntry(CKM_DSA_SHA1, Mechanism),
    mkEntry(CKM_DH_PKCS_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_DH_PKCS_DERIVE, Mechanism),
    mkEntry(CKM_X9_42_DH_DERIVE, Mechanism),
    mkEntry(CKM_X9_42_DH_HYBRID_DERIVE, Mechanism),
    mkEntry(CKM_X9_42_MQV_DERIVE, Mechanism),
    mkEntry(CKM_SHA256_RSA_PKCS, Mechanism),
    mkEntry(CKM_SHA384_RSA_PKCS, Mechanism),
    mkEntry(CKM_SHA512_RSA_PKCS, Mechanism),
    mkEntry(CKM_RC2_KEY_GEN, Mechanism),
    mkEntry(CKM_RC2_ECB, Mechanism),
    mkEntry(CKM_RC2_CBC, Mechanism),
    mkEntry(CKM_RC2_MAC, Mechanism),
    mkEntry(CKM_RC2_MAC_GENERAL, Mechanism),
    mkEntry(CKM_RC2_CBC_PAD, Mechanism),
    mkEntry(CKM_RC4_KEY_GEN, Mechanism),
    mkEntry(CKM_RC4, Mechanism),
    mkEntry(CKM_DES_KEY_GEN, Mechanism),
    mkEntry(CKM_DES_ECB, Mechanism),
    mkEntry(CKM_DES_CBC, Mechanism),
    mkEntry(CKM_DES_MAC, Mechanism),
    mkEntry(CKM_DES_MAC_GENERAL, Mechanism),
    mkEntry(CKM_DES_CBC_PAD, Mechanism),
    mkEntry(CKM_DES2_KEY_GEN, Mechanism),
    mkEntry(CKM_DES3_KEY_GEN, Mechanism),
    mkEntry(CKM_DES3_ECB, Mechanism),
    mkEntry(CKM_DES3_CBC, Mechanism),
    mkEntry(CKM_DES3_MAC, Mechanism),
    mkEntry(CKM_DES3_MAC_GENERAL, Mechanism),
    mkEntry(CKM_DES3_CBC_PAD, Mechanism),
    mkEntry(CKM_CDMF_KEY_GEN, Mechanism),
    mkEntry(CKM_CDMF_ECB, Mechanism),
    mkEntry(CKM_CDMF_CBC, Mechanism),
    mkEntry(CKM_CDMF_MAC, Mechanism),
    mkEntry(CKM_CDMF_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CDMF_CBC_PAD, Mechanism),
    mkEntry(CKM_MD2, Mechanism),
    mkEntry(CKM_MD2_HMAC, Mechanism),
    mkEntry(CKM_MD2_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_MD5, Mechanism),
    mkEntry(CKM_MD5_HMAC, Mechanism),
    mkEntry(CKM_MD5_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_SHA_1, Mechanism),
    mkEntry(CKM_SHA_1_HMAC, Mechanism),
    mkEntry(CKM_SHA_1_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_RIPEMD128, Mechanism),
    mkEntry(CKM_RIPEMD128_HMAC, Mechanism),
    mkEntry(CKM_RIPEMD128_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_RIPEMD160, Mechanism),
    mkEntry(CKM_RIPEMD160_HMAC, Mechanism),
    mkEntry(CKM_RIPEMD160_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_SHA256, Mechanism),
    mkEntry(CKM_SHA256_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_SHA256_HMAC, Mechanism),
    mkEntry(CKM_SHA384, Mechanism),
    mkEntry(CKM_SHA384_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_SHA384_HMAC, Mechanism),
    mkEntry(CKM_SHA512, Mechanism),
    mkEntry(CKM_SHA512_HMAC_GENERAL, Mechanism),
    mkEntry(CKM_SHA512_HMAC, Mechanism),
    mkEntry(CKM_CAST_KEY_GEN, Mechanism),
    mkEntry(CKM_CAST_ECB, Mechanism),
    mkEntry(CKM_CAST_CBC, Mechanism),
    mkEntry(CKM_CAST_MAC, Mechanism),
    mkEntry(CKM_CAST_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CAST_CBC_PAD, Mechanism),
    mkEntry(CKM_CAST3_KEY_GEN, Mechanism),
    mkEntry(CKM_CAST3_ECB, Mechanism),
    mkEntry(CKM_CAST3_CBC, Mechanism),
    mkEntry(CKM_CAST3_MAC, Mechanism),
    mkEntry(CKM_CAST3_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CAST3_CBC_PAD, Mechanism),
    mkEntry(CKM_CAST5_KEY_GEN, Mechanism),
    mkEntry(CKM_CAST128_KEY_GEN, Mechanism),
    mkEntry(CKM_CAST5_ECB, Mechanism),
    mkEntry(CKM_CAST128_ECB, Mechanism),
    mkEntry(CKM_CAST5_CBC, Mechanism),
    mkEntry(CKM_CAST128_CBC, Mechanism),
    mkEntry(CKM_CAST5_MAC, Mechanism),
    mkEntry(CKM_CAST128_MAC, Mechanism),
    mkEntry(CKM_CAST5_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CAST128_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CAST5_CBC_PAD, Mechanism),
    mkEntry(CKM_CAST128_CBC_PAD, Mechanism),
    mkEntry(CKM_RC5_KEY_GEN, Mechanism),
    mkEntry(CKM_RC5_ECB, Mechanism),
    mkEntry(CKM_RC5_CBC, Mechanism),
    mkEntry(CKM_RC5_MAC, Mechanism),
    mkEntry(CKM_RC5_MAC_GENERAL, Mechanism),
    mkEntry(CKM_RC5_CBC_PAD, Mechanism),
    mkEntry(CKM_IDEA_KEY_GEN, Mechanism),
    mkEntry(CKM_IDEA_ECB, Mechanism),
    mkEntry(CKM_IDEA_CBC, Mechanism),
    mkEntry(CKM_IDEA_MAC, Mechanism),
    mkEntry(CKM_IDEA_MAC_GENERAL, Mechanism),
    mkEntry(CKM_IDEA_CBC_PAD, Mechanism),
    mkEntry(CKM_GENERIC_SECRET_KEY_GEN, Mechanism),
    mkEntry(CKM_CONCATENATE_BASE_AND_KEY, Mechanism),
    mkEntry(CKM_CONCATENATE_BASE_AND_DATA, Mechanism),
    mkEntry(CKM_CONCATENATE_DATA_AND_BASE, Mechanism),
    mkEntry(CKM_XOR_BASE_AND_DATA, Mechanism),
    mkEntry(CKM_EXTRACT_KEY_FROM_KEY, Mechanism),
    mkEntry(CKM_SSL3_PRE_MASTER_KEY_GEN, Mechanism),
    mkEntry(CKM_SSL3_MASTER_KEY_DERIVE, Mechanism),
    mkEntry(CKM_SSL3_KEY_AND_MAC_DERIVE, Mechanism),
    mkEntry(CKM_SSL3_MASTER_KEY_DERIVE_DH, Mechanism),
    mkEntry(CKM_TLS_PRE_MASTER_KEY_GEN, Mechanism),
    mkEntry(CKM_TLS_MASTER_KEY_DERIVE, Mechanism),
    mkEntry(CKM_NSS_TLS_MASTER_KEY_DERIVE_SHA256, Mechanism),
    mkEntry(CKM_TLS_KEY_AND_MAC_DERIVE, Mechanism),
    mkEntry(CKM_NSS_TLS_KEY_AND_MAC_DERIVE_SHA256, Mechanism),
    mkEntry(CKM_TLS_MASTER_KEY_DERIVE_DH, Mechanism),
    mkEntry(CKM_NSS_TLS_MASTER_KEY_DERIVE_DH_SHA256, Mechanism),
    mkEntry(CKM_SSL3_MD5_MAC, Mechanism),
    mkEntry(CKM_SSL3_SHA1_MAC, Mechanism),
    mkEntry(CKM_MD5_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_MD2_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_SHA1_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_SHA256_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_SHA384_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_SHA512_KEY_DERIVATION, Mechanism),
    mkEntry(CKM_PBE_MD2_DES_CBC, Mechanism),
    mkEntry(CKM_PBE_MD5_DES_CBC, Mechanism),
    mkEntry(CKM_PBE_MD5_CAST_CBC, Mechanism),
    mkEntry(CKM_PBE_MD5_CAST3_CBC, Mechanism),
    mkEntry(CKM_PBE_MD5_CAST5_CBC, Mechanism),
    mkEntry(CKM_PBE_MD5_CAST128_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_CAST5_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_CAST128_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_RC4_128, Mechanism),
    mkEntry(CKM_PBE_SHA1_RC4_40, Mechanism),
    mkEntry(CKM_PBE_SHA1_DES3_EDE_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_DES2_EDE_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_RC2_128_CBC, Mechanism),
    mkEntry(CKM_PBE_SHA1_RC2_40_CBC, Mechanism),
    mkEntry(CKM_PKCS5_PBKD2, Mechanism),
    mkEntry(CKM_PBA_SHA1_WITH_SHA1_HMAC, Mechanism),
    mkEntry(CKM_KEY_WRAP_LYNKS, Mechanism),
    mkEntry(CKM_KEY_WRAP_SET_OAEP, Mechanism),
    mkEntry(CKM_SKIPJACK_KEY_GEN, Mechanism),
    mkEntry(CKM_SKIPJACK_ECB64, Mechanism),
    mkEntry(CKM_SKIPJACK_CBC64, Mechanism),
    mkEntry(CKM_SKIPJACK_OFB64, Mechanism),
    mkEntry(CKM_SKIPJACK_CFB64, Mechanism),
    mkEntry(CKM_SKIPJACK_CFB32, Mechanism),
    mkEntry(CKM_SKIPJACK_CFB16, Mechanism),
    mkEntry(CKM_SKIPJACK_CFB8, Mechanism),
    mkEntry(CKM_SKIPJACK_WRAP, Mechanism),
    mkEntry(CKM_SKIPJACK_PRIVATE_WRAP, Mechanism),
    mkEntry(CKM_SKIPJACK_RELAYX, Mechanism),
    mkEntry(CKM_KEA_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_KEA_KEY_DERIVE, Mechanism),
    mkEntry(CKM_FORTEZZA_TIMESTAMP, Mechanism),
    mkEntry(CKM_BATON_KEY_GEN, Mechanism),
    mkEntry(CKM_BATON_ECB128, Mechanism),
    mkEntry(CKM_BATON_ECB96, Mechanism),
    mkEntry(CKM_BATON_CBC128, Mechanism),
    mkEntry(CKM_BATON_COUNTER, Mechanism),
    mkEntry(CKM_BATON_SHUFFLE, Mechanism),
    mkEntry(CKM_BATON_WRAP, Mechanism),
    mkEntry(CKM_ECDSA_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_EC_KEY_PAIR_GEN, Mechanism),
    mkEntry(CKM_ECDSA, Mechanism),
    mkEntry(CKM_ECDSA_SHA1, Mechanism),
    mkEntry(CKM_ECDH1_DERIVE, Mechanism),
    mkEntry(CKM_ECDH1_COFACTOR_DERIVE, Mechanism),
    mkEntry(CKM_ECMQV_DERIVE, Mechanism),
    mkEntry(CKM_JUNIPER_KEY_GEN, Mechanism),
    mkEntry(CKM_JUNIPER_ECB128, Mechanism),
    mkEntry(CKM_JUNIPER_CBC128, Mechanism),
    mkEntry(CKM_JUNIPER_COUNTER, Mechanism),
    mkEntry(CKM_JUNIPER_SHUFFLE, Mechanism),
    mkEntry(CKM_JUNIPER_WRAP, Mechanism),
    mkEntry(CKM_FASTHASH, Mechanism),
    mkEntry(CKM_AES_KEY_GEN, Mechanism),
    mkEntry(CKM_AES_ECB, Mechanism),
    mkEntry(CKM_AES_CBC, Mechanism),
    mkEntry(CKM_AES_MAC, Mechanism),
    mkEntry(CKM_AES_MAC_GENERAL, Mechanism),
    mkEntry(CKM_AES_CBC_PAD, Mechanism),
    mkEntry(CKM_CAMELLIA_KEY_GEN, Mechanism),
    mkEntry(CKM_CAMELLIA_ECB, Mechanism),
    mkEntry(CKM_CAMELLIA_CBC, Mechanism),
    mkEntry(CKM_CAMELLIA_MAC, Mechanism),
    mkEntry(CKM_CAMELLIA_MAC_GENERAL, Mechanism),
    mkEntry(CKM_CAMELLIA_CBC_PAD, Mechanism),
    mkEntry(CKM_SEED_KEY_GEN, Mechanism),
    mkEntry(CKM_SEED_ECB, Mechanism),
    mkEntry(CKM_SEED_CBC, Mechanism),
    mkEntry(CKM_SEED_MAC, Mechanism),
    mkEntry(CKM_SEED_MAC_GENERAL, Mechanism),
    mkEntry(CKM_SEED_CBC_PAD, Mechanism),
    mkEntry(CKM_SEED_ECB_ENCRYPT_DATA, Mechanism),
    mkEntry(CKM_SEED_CBC_ENCRYPT_DATA, Mechanism),
    mkEntry(CKM_DSA_PARAMETER_GEN, Mechanism),
    mkEntry(CKM_DH_PKCS_PARAMETER_GEN, Mechanism),
    mkEntry(CKM_NSS_AES_KEY_WRAP, Mechanism),
    mkEntry(CKM_NSS_AES_KEY_WRAP_PAD, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_DES_CBC, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_TRIPLE_DES_CBC, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_40_BIT_RC2_CBC, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_128_BIT_RC2_CBC, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_40_BIT_RC4, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_128_BIT_RC4, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_FAULTY_3DES_CBC, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_SHA1_HMAC_KEY_GEN, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_MD5_HMAC_KEY_GEN, Mechanism),
    mkEntry(CKM_NETSCAPE_PBE_MD2_HMAC_KEY_GEN, Mechanism),
    mkEntry(CKM_TLS_PRF_GENERAL, Mechanism),
    mkEntry(CKM_NSS_TLS_PRF_GENERAL_SHA256, Mechanism),

    mkEntry(CKR_OK, Result),
    mkEntry(CKR_CANCEL, Result),
    mkEntry(CKR_HOST_MEMORY, Result),
    mkEntry(CKR_SLOT_ID_INVALID, Result),
    mkEntry(CKR_GENERAL_ERROR, Result),
    mkEntry(CKR_FUNCTION_FAILED, Result),
    mkEntry(CKR_ARGUMENTS_BAD, Result),
    mkEntry(CKR_NO_EVENT, Result),
    mkEntry(CKR_NEED_TO_CREATE_THREADS, Result),
    mkEntry(CKR_CANT_LOCK, Result),
    mkEntry(CKR_ATTRIBUTE_READ_ONLY, Result),
    mkEntry(CKR_ATTRIBUTE_SENSITIVE, Result),
    mkEntry(CKR_ATTRIBUTE_TYPE_INVALID, Result),
    mkEntry(CKR_ATTRIBUTE_VALUE_INVALID, Result),
    mkEntry(CKR_DATA_INVALID, Result),
    mkEntry(CKR_DATA_LEN_RANGE, Result),
    mkEntry(CKR_DEVICE_ERROR, Result),
    mkEntry(CKR_DEVICE_MEMORY, Result),
    mkEntry(CKR_DEVICE_REMOVED, Result),
    mkEntry(CKR_ENCRYPTED_DATA_INVALID, Result),
    mkEntry(CKR_ENCRYPTED_DATA_LEN_RANGE, Result),
    mkEntry(CKR_FUNCTION_CANCELED, Result),
    mkEntry(CKR_FUNCTION_NOT_PARALLEL, Result),
    mkEntry(CKR_FUNCTION_NOT_SUPPORTED, Result),
    mkEntry(CKR_KEY_HANDLE_INVALID, Result),
    mkEntry(CKR_KEY_SIZE_RANGE, Result),
    mkEntry(CKR_KEY_TYPE_INCONSISTENT, Result),
    mkEntry(CKR_KEY_NOT_NEEDED, Result),
    mkEntry(CKR_KEY_CHANGED, Result),
    mkEntry(CKR_KEY_NEEDED, Result),
    mkEntry(CKR_KEY_INDIGESTIBLE, Result),
    mkEntry(CKR_KEY_FUNCTION_NOT_PERMITTED, Result),
    mkEntry(CKR_KEY_NOT_WRAPPABLE, Result),
    mkEntry(CKR_KEY_UNEXTRACTABLE, Result),
    mkEntry(CKR_KEY_PARAMS_INVALID, Result),
    mkEntry(CKR_MECHANISM_INVALID, Result),
    mkEntry(CKR_MECHANISM_PARAM_INVALID, Result),
    mkEntry(CKR_OBJECT_HANDLE_INVALID, Result),
    mkEntry(CKR_OPERATION_ACTIVE, Result),
    mkEntry(CKR_OPERATION_NOT_INITIALIZED, Result),
    mkEntry(CKR_PIN_INCORRECT, Result),
    mkEntry(CKR_PIN_INVALID, Result),
    mkEntry(CKR_PIN_LEN_RANGE, Result),
    mkEntry(CKR_PIN_EXPIRED, Result),
    mkEntry(CKR_PIN_LOCKED, Result),
    mkEntry(CKR_SESSION_CLOSED, Result),
    mkEntry(CKR_SESSION_COUNT, Result),
    mkEntry(CKR_SESSION_HANDLE_INVALID, Result),
    mkEntry(CKR_SESSION_PARALLEL_NOT_SUPPORTED, Result),
    mkEntry(CKR_SESSION_READ_ONLY, Result),
    mkEntry(CKR_SESSION_EXISTS, Result),
    mkEntry(CKR_SESSION_READ_ONLY_EXISTS, Result),
    mkEntry(CKR_SESSION_READ_WRITE_SO_EXISTS, Result),
    mkEntry(CKR_SIGNATURE_INVALID, Result),
    mkEntry(CKR_SIGNATURE_LEN_RANGE, Result),
    mkEntry(CKR_TEMPLATE_INCOMPLETE, Result),
    mkEntry(CKR_TEMPLATE_INCONSISTENT, Result),
    mkEntry(CKR_TOKEN_NOT_PRESENT, Result),
    mkEntry(CKR_TOKEN_NOT_RECOGNIZED, Result),
    mkEntry(CKR_TOKEN_WRITE_PROTECTED, Result),
    mkEntry(CKR_UNWRAPPING_KEY_HANDLE_INVALID, Result),
    mkEntry(CKR_UNWRAPPING_KEY_SIZE_RANGE, Result),
    mkEntry(CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT, Result),
    mkEntry(CKR_USER_ALREADY_LOGGED_IN, Result),
    mkEntry(CKR_USER_NOT_LOGGED_IN, Result),
    mkEntry(CKR_USER_PIN_NOT_INITIALIZED, Result),
    mkEntry(CKR_USER_TYPE_INVALID, Result),
    mkEntry(CKR_USER_ANOTHER_ALREADY_LOGGED_IN, Result),
    mkEntry(CKR_USER_TOO_MANY_TYPES, Result),
    mkEntry(CKR_WRAPPED_KEY_INVALID, Result),
    mkEntry(CKR_WRAPPED_KEY_LEN_RANGE, Result),
    mkEntry(CKR_WRAPPING_KEY_HANDLE_INVALID, Result),
    mkEntry(CKR_WRAPPING_KEY_SIZE_RANGE, Result),
    mkEntry(CKR_WRAPPING_KEY_TYPE_INCONSISTENT, Result),
    mkEntry(CKR_RANDOM_SEED_NOT_SUPPORTED, Result),
    mkEntry(CKR_RANDOM_NO_RNG, Result),
    mkEntry(CKR_DOMAIN_PARAMS_INVALID, Result),
    mkEntry(CKR_BUFFER_TOO_SMALL, Result),
    mkEntry(CKR_SAVED_STATE_INVALID, Result),
    mkEntry(CKR_INFORMATION_SENSITIVE, Result),
    mkEntry(CKR_STATE_UNSAVEABLE, Result),
    mkEntry(CKR_CRYPTOKI_NOT_INITIALIZED, Result),
    mkEntry(CKR_CRYPTOKI_ALREADY_INITIALIZED, Result),
    mkEntry(CKR_MUTEX_BAD, Result),
    mkEntry(CKR_MUTEX_NOT_LOCKED, Result),
    mkEntry(CKR_VENDOR_DEFINED, Result),

    mkEntry(CKT_NSS_TRUSTED, Trust),
    mkEntry(CKT_NSS_TRUSTED_DELEGATOR, Trust),
    mkEntry(CKT_NSS_NOT_TRUSTED, Trust),
    mkEntry(CKT_NSS_MUST_VERIFY_TRUST, Trust),
    mkEntry(CKT_NSS_TRUST_UNKNOWN, Trust),
    mkEntry(CKT_NSS_VALID_DELEGATOR, Trust),

    mkEntry(CK_EFFECTIVELY_INFINITE, AvailableSizes),
    mkEntry(CK_UNAVAILABLE_INFORMATION, CurrentSize),
};

const Constant *consts = &_consts[0];
const unsigned int constCount = sizeof(_consts) / sizeof(_consts[0]);

const Commands _commands[] = {
    { "C_Initialize",
      F_C_Initialize,
      "C_Initialize pInitArgs\n\n"
      "C_Initialize initializes the PKCS #11 library.\n"
      "  pInitArgs  if this is not NULL_PTR it gets cast to and dereferenced\n",
      { ArgInitializeArgs, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_Finalize",
      F_C_Finalize,
      "C_Finalize pReserved\n\n"
      "C_Finalize indicates that an application is done with the PKCS #11 library.\n"
      " pReserved  reserved. Should be NULL_PTR\n",
      { ArgInitializeArgs, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_GetInfo",
      F_C_GetInfo,
      "C_GetInfo pInfo\n\n"
      "C_GetInfo returns general information about PKCS #11.\n"
      " pInfo   location that receives information\n",
      { ArgInfo | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_GetFunctionList",
      F_C_GetFunctionList,
      "C_GetFunctionList ppFunctionList\n\n"
      "C_GetFunctionList returns the function list.\n"
      " ppFunctionList   receives pointer to function list\n",
      { ArgFunctionList | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_GetSlotList",
      F_C_GetSlotList,
      "C_GetSlotList tokenPresent pSlotList pulCount\n\n"
      "C_GetSlotList obtains a list of slots in the system.\n"
      " tokenPresent    only slots with tokens?\n"
      " pSlotList       receives array of slot IDs\n"
      " pulCount        receives number of slots\n",
      { ArgULong, ArgULong | ArgArray | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_GetSlotInfo",
      F_C_GetSlotInfo,
      "C_GetSlotInfo slotID pInfo\n\n"
      "C_GetSlotInfo obtains information about a particular slot in the system.\n"
      " slotID    the ID of the slot\n"
      " pInfo     receives the slot information\n",
      { ArgULong, ArgSlotInfo | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_GetTokenInfo",
      F_C_GetTokenInfo,
      "C_GetTokenInfo slotID pInfo\n\n"
      "C_GetTokenInfo obtains information about a particular token in the system.\n"
      " slotID    ID of the token's slot\n"
      " pInfo     receives the token information\n",
      { ArgULong, ArgTokenInfo | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_GetMechanismList",
      F_C_GetMechanismList,
      "C_GetMechanismList slotID pMechanismList pulCount\n\n"
      "C_GetMechanismList obtains a list of mechanism types supported by a token.\n"
      " slotID            ID of token's slot\n"
      " pMechanismList    gets mech. array\n"
      " pulCount          gets # of mechs.\n",
      { ArgULong, ArgULong | ArgArray | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_GetMechanismInfo",
      F_C_GetMechanismInfo,
      "C_GetMechanismInfo slotID type pInfo\n\n"
      "C_GetMechanismInfo obtains information about a particular mechanism possibly\n"
      "supported by a token.\n"
      " slotID    ID of the token's slot\n"
      " type      type of mechanism\n"
      " pInfo     receives mechanism info\n",
      { ArgULong, ArgULong, ArgMechanismInfo | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_InitToken",
      F_C_InitToken,
      "C_InitToken slotID pPin ulPinLen pLabel\n\n"
      "C_InitToken initializes a token.\n"
      " slotID      ID of the token's slot\n"
      " pPin        the SO's initial PIN\n"
      " ulPinLen    length in bytes of the PIN\n"
      " pLabel      32-byte token label (blank padded)\n",
      { ArgULong, ArgUTF8, ArgULong, ArgUTF8, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_InitPIN",
      F_C_InitPIN,
      "C_InitPIN hSession pPin ulPinLen\n\n"
      "C_InitPIN initializes the normal user's PIN.\n"
      " hSession    the session's handle\n"
      " pPin        the normal user's PIN\n"
      " ulPinLen    length in bytes of the PIN\n",
      { ArgULong, ArgUTF8, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_SetPIN",
      F_C_SetPIN,
      "C_SetPIN hSession pOldPin ulOldLen pNewPin ulNewLen\n\n"
      "C_SetPIN modifies the PIN of the user who is logged in.\n"
      " hSession    the session's handle\n"
      " pOldPin     the old PIN\n"
      " ulOldLen    length of the old PIN\n"
      " pNewPin     the new PIN\n"
      " ulNewLen    length of the new PIN\n",
      { ArgULong, ArgUTF8, ArgULong, ArgUTF8, ArgULong, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_OpenSession",
      F_C_OpenSession,
      "C_OpenSession slotID flags phSession\n\n"
      "C_OpenSession opens a session between an application and a token.\n"
      " slotID          the slot's ID\n"
      " flags           from\n"
      " phSession       gets session handle\n",
      { ArgULong, ArgULong, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_CloseSession",
      F_C_CloseSession,
      "C_CloseSession hSession\n\n"
      "C_CloseSession closes a session between an application and a token.\n"
      " hSession   the session's handle\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_CloseAllSessions",
      F_C_CloseAllSessions,
      "C_CloseAllSessions slotID\n\n"
      "C_CloseAllSessions closes all sessions with a token.\n"
      " slotID   the token's slot\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_GetSessionInfo",
      F_C_GetSessionInfo,
      "C_GetSessionInfo hSession pInfo\n\n"
      "C_GetSessionInfo obtains information about the session.\n"
      " hSession    the session's handle\n"
      " pInfo       receives session info\n",
      { ArgULong, ArgSessionInfo | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_GetOperationState",
      F_C_GetOperationState,
      "C_GetOperationState hSession pOpState pulOpStateLen\n\n"
      "C_GetOperationState obtains the state of the cryptographic operation in a\n"
      "session.\n"
      " hSession        session's handle\n"
      " pOpState        gets state\n"
      " pulOpStateLen   gets state length\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_SetOperationState",
      F_C_SetOperationState,
      "C_SetOperationState hSession pOpState ulOpStateLen hEncKey hAuthKey\n\n"
      "C_SetOperationState restores the state of the cryptographic operation in a\n"
      "session.\n"
      " hSession        session's handle\n"
      " pOpState        holds state\n"
      " ulOpStateLen    holds state length\n"
      " hEncKey         en/decryption key\n"
      " hAuthnKey       sign/verify key\n",
      { ArgULong, ArgChar | ArgOut, ArgULong, ArgULong, ArgULong, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_Login",
      F_C_Login,
      "C_Login hSession userType pPin ulPinLen\n\n"
      "C_Login logs a user into a token.\n"
      " hSession    the session's handle\n"
      " userType    the user type\n"
      " pPin        the user's PIN\n"
      " ulPinLen    the length of the PIN\n",
      { ArgULong, ArgULong, ArgVar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_Logout",
      F_C_Logout,
      "C_Logout hSession\n\n"
      "C_Logout logs a user out from a token.\n"
      " hSession   the session's handle\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_CreateObject",
      F_C_CreateObject,
      "C_CreateObject hSession pTemplate ulCount phObject\n\n"
      "C_CreateObject creates a new object.\n"
      " hSession      the session's handle\n"
      " pTemplate     the object's template\n"
      " ulCount       attributes in template\n"
      " phObject   gets new object's handle.\n",
      { ArgULong, ArgAttribute | ArgArray, ArgULong, ArgULong | ArgOut, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_CopyObject",
      F_C_CopyObject,
      "C_CopyObject hSession hObject pTemplate ulCount phNewObject\n\n"
      "C_CopyObject copies an object creating a new object for the copy.\n"
      " hSession      the session's handle\n"
      " hObject       the object's handle\n"
      " pTemplate     template for new object\n"
      " ulCount       attributes in template\n"
      " phNewObject   receives handle of copy\n",
      { ArgULong, ArgULong, ArgAttribute | ArgArray, ArgULong, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DestroyObject",
      F_C_DestroyObject,
      "C_DestroyObject hSession hObject\n\n"
      "C_DestroyObject destroys an object.\n"
      " hSession    the session's handle\n"
      " hObject     the object's handle\n",
      { ArgULong, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_GetObjectSize",
      F_C_GetObjectSize,
      "C_GetObjectSize hSession hObject pulSize\n\n"
      "C_GetObjectSize gets the size of an object in bytes.\n"
      " hSession    the session's handle\n"
      " hObject     the object's handle\n"
      " pulSize     receives size of object\n",
      { ArgULong, ArgULong, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_GetAttributeValue",
      F_C_GetAttributeValue,
      "C_GetAttributeValue hSession hObject pTemplate ulCount\n\n"
      "C_GetAttributeValue obtains the value of one or more object attributes.\n"
      " hSession     the session's handle\n"
      " hObject      the object's handle\n"
      " pTemplate    specifies attrs; gets vals\n"
      " ulCount      attributes in template\n",
      { ArgULong, ArgULong, ArgAttribute | ArgArray, ArgULong, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_SetAttributeValue",
      F_C_SetAttributeValue,
      "C_SetAttributeValue hSession hObject pTemplate ulCount\n\n"
      "C_SetAttributeValue modifies the value of one or more object attributes\n"
      " hSession     the session's handle\n"
      " hObject      the object's handle\n"
      " pTemplate    specifies attrs and values\n"
      " ulCount      attributes in template\n",
      { ArgULong, ArgULong, ArgAttribute | ArgArray, ArgULong, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_FindObjectsInit",
      F_C_FindObjectsInit,
      "C_FindObjectsInit hSession pTemplate ulCount\n\n"
      "C_FindObjectsInit initializes a search for token and session objects that\n"
      "match a template.\n"
      " hSession     the session's handle\n"
      " pTemplate    attribute values to match\n"
      " ulCount      attrs in search template\n",
      { ArgULong, ArgAttribute | ArgArray, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_FindObjectsFinal",
      F_C_FindObjectsFinal,
      "C_FindObjectsFinal hSession\n\n"
      "C_FindObjectsFinal finishes a search for token and session objects.\n"
      " hSession   the session's handle\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_FindObjects",
      F_C_FindObjects,
      "C_FindObjects hSession phObject ulMaxObjectCount pulObjectCount\n\n"
      "C_FindObjects continues a search for token and session objects that match\n"
      "a template obtaining additional object handles.\n"
      " hSession            session's handle\n"
      " phObject            gets obj. handles\n"
      " ulMaxObjectCount    max handles to get\n"
      " pulObjectCount      actual # returned\n",
      { ArgULong, ArgULong | ArgOut, ArgULong, ArgULong | ArgOut, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_EncryptInit",
      F_C_EncryptInit,
      "C_EncryptInit hSession pMechanism hKey\n\n"
      "C_EncryptInit initializes an encryption operation.\n"
      " hSession      the session's handle\n"
      " pMechanism    the encryption mechanism\n"
      " hKey          handle of encryption key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_EncryptUpdate",
      F_C_EncryptUpdate,
      "C_EncryptUpdate hSession pPart ulPartLen pEncryptedPart pulEncryptedPartLen\n"
      "\n"
      "C_EncryptUpdate continues a multiple-part encryption operation.\n"
      " hSession             session's handle\n"
      " pPart                the plaintext data\n"
      " ulPartLen            plaintext data len\n"
      " pEncryptedPart       gets ciphertext\n"
      " pulEncryptedPartLen  gets c-text size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_EncryptFinal",
      F_C_EncryptFinal,
      "C_EncryptFinal hSession pLastEncryptedPart pulLastEncryptedPartLen\n\n"
      "C_EncryptFinal finishes a multiple-part encryption operation.\n"
      " hSession                  session handle\n"
      " pLastEncryptedPart        last c-text\n"
      " pulLastEncryptedPartLen   gets last size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_Encrypt",
      F_C_Encrypt,
      "C_Encrypt hSession pData ulDataLen pEncryptedData pulEncryptedDataLen\n\n"
      "C_Encrypt encrypts single-part data.\n"
      " hSession              session's handle\n"
      " pData                 the plaintext data\n"
      " ulDataLen             bytes of plaintext\n"
      " pEncryptedData        gets ciphertext\n"
      " pulEncryptedDataLen   gets c-text size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DecryptInit",
      F_C_DecryptInit,
      "C_DecryptInit hSession pMechanism hKey\n\n"
      "C_DecryptInit initializes a decryption operation.\n"
      " hSession      the session's handle\n"
      " pMechanism    the decryption mechanism\n"
      " hKey          handle of decryption key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_DecryptUpdate",
      F_C_DecryptUpdate,
      "C_DecryptUpdate hSession pEncryptedPart ulEncryptedPartLen pPart pulPartLen\n"
      "\n"
      "C_DecryptUpdate continues a multiple-part decryption operation.\n"
      " hSession              session's handle\n"
      " pEncryptedPart        encrypted data\n"
      " ulEncryptedPartLen    input length\n"
      " pPart                 gets plaintext\n"
      " pulPartLen            p-text size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DecryptFinal",
      F_C_DecryptFinal,
      "C_DecryptFinal hSession pLastPart pulLastPartLen\n\n"
      "C_DecryptFinal finishes a multiple-part decryption operation.\n"
      " hSession         the session's handle\n"
      " pLastPart        gets plaintext\n"
      " pulLastPartLen   p-text size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_Decrypt",
      F_C_Decrypt,
      "C_Decrypt hSession pEncryptedData ulEncryptedDataLen pData pulDataLen\n\n"
      "C_Decrypt decrypts encrypted data in a single part.\n"
      " hSession             session's handle\n"
      " pEncryptedData       ciphertext\n"
      " ulEncryptedDataLen   ciphertext length\n"
      " pData                gets plaintext\n"
      " pulDataLen           gets p-text size\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DigestInit",
      F_C_DigestInit,
      "C_DigestInit hSession pMechanism\n\n"
      "C_DigestInit initializes a message-digesting operation.\n"
      " hSession     the session's handle\n"
      " pMechanism   the digesting mechanism\n",
      { ArgULong, ArgMechanism, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_DigestUpdate",
      F_C_DigestUpdate,
      "C_DigestUpdate hSession pPart ulPartLen\n\n"
      "C_DigestUpdate continues a multiple-part message-digesting operation.\n"
      " hSession    the session's handle\n"
      " pPart       data to be digested\n"
      " ulPartLen   bytes of data to be digested\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DigestKey",
      F_C_DigestKey,
      "C_DigestKey hSession hKey\n\n"
      "C_DigestKey continues a multi-part message-digesting operation by digesting\n"
      "the value of a secret key as part of the data already digested.\n"
      " hSession    the session's handle\n"
      " hKey        secret key to digest\n",
      { ArgULong, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_DigestFinal",
      F_C_DigestFinal,
      "C_DigestFinal hSession pDigest pulDigestLen\n\n"
      "C_DigestFinal finishes a multiple-part message-digesting operation.\n"
      " hSession       the session's handle\n"
      " pDigest        gets the message digest\n"
      " pulDigestLen   gets byte count of digest\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_Digest",
      F_C_Digest,
      "C_Digest hSession pData ulDataLen pDigest pulDigestLen\n\n"
      "C_Digest digests data in a single part.\n"
      " hSession       the session's handle\n"
      " pData          data to be digested\n"
      " ulDataLen      bytes of data to digest\n"
      " pDigest        gets the message digest\n"
      " pulDigestLen   gets digest length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_SignInit",
      F_C_SignInit,
      "C_SignInit hSession pMechanism hKey\n\n"
      "C_SignInit initializes a signature (private key encryption operation where\n"
      "the signature is (will be) an appendix to the data and plaintext cannot be\n"
      "recovered from the signature.\n"
      " hSession      the session's handle\n"
      " pMechanism    the signature mechanism\n"
      " hKey          handle of signature key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_SignUpdate",
      F_C_SignUpdate,
      "C_SignUpdate hSession pPart ulPartLen\n\n"
      "C_SignUpdate continues a multiple-part signature operation where the\n"
      "signature is (will be) an appendix to the data and plaintext cannot be\n"
      "recovered from the signature.\n"
      " hSession    the session's handle\n"
      " pPart       the data to sign\n"
      " ulPartLen   count of bytes to sign\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_SignFinal",
      F_C_SignFinal,
      "C_SignFinal hSession pSignature pulSignatureLen\n\n"
      "C_SignFinal finishes a multiple-part signature operation returning the\n"
      "signature.\n"
      " hSession          the session's handle\n"
      " pSignature        gets the signature\n"
      " pulSignatureLen   gets signature length\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_SignRecoverInit",
      F_C_SignRecoverInit,
      "C_SignRecoverInit hSession pMechanism hKey\n\n"
      "C_SignRecoverInit initializes a signature operation where the data can be\n"
      "recovered from the signature.\n"
      " hSession     the session's handle\n"
      " pMechanism   the signature mechanism\n"
      " hKey         handle of the signature key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_SignRecover",
      F_C_SignRecover,
      "C_SignRecover hSession pData ulDataLen pSignature pulSignatureLen\n\n"
      "C_SignRecover signs data in a single operation where the data can be\n"
      "recovered from the signature.\n"
      " hSession          the session's handle\n"
      " pData             the data to sign\n"
      " ulDataLen         count of bytes to sign\n"
      " pSignature        gets the signature\n"
      " pulSignatureLen   gets signature length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_Sign",
      F_C_Sign,
      "C_Sign hSession pData ulDataLen pSignature pulSignatureLen\n\n"
      "C_Sign signs (encrypts with private key) data in a single part where the\n"
      "signature is (will be) an appendix to the data and plaintext cannot be\n"
      "recovered from the signature.\n"
      " hSession          the session's handle\n"
      " pData             the data to sign\n"
      " ulDataLen         count of bytes to sign\n"
      " pSignature        gets the signature\n"
      " pulSignatureLen   gets signature length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_VerifyInit",
      F_C_VerifyInit,
      "C_VerifyInit hSession pMechanism hKey\n\n"
      "C_VerifyInit initializes a verification operation where the signature is an\n"
      "appendix to the data and plaintext cannot cannot be recovered from the\n"
      "signature (e.g. DSA).\n"
      " hSession      the session's handle\n"
      " pMechanism    the verification mechanism\n"
      " hKey          verification key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_VerifyUpdate",
      F_C_VerifyUpdate,
      "C_VerifyUpdate hSession pPart ulPartLen\n\n"
      "C_VerifyUpdate continues a multiple-part verification operation where the\n"
      "signature is an appendix to the data and plaintext cannot be recovered from\n"
      "the signature.\n"
      " hSession    the session's handle\n"
      " pPart       signed data\n"
      " ulPartLen   length of signed data\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_VerifyFinal",
      F_C_VerifyFinal,
      "C_VerifyFinal hSession pSignature ulSignatureLen\n\n"
      "C_VerifyFinal finishes a multiple-part verification operation checking the\n"
      "signature.\n"
      " hSession         the session's handle\n"
      " pSignature       signature to verify\n"
      " ulSignatureLen   signature length\n",
      { ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "C_VerifyRecoverInit",
      F_C_VerifyRecoverInit,
      "C_VerifyRecoverInit hSession pMechanism hKey\n\n"
      "C_VerifyRecoverInit initializes a signature verification operation where the\n"
      "data is recovered from the signature.\n"
      " hSession      the session's handle\n"
      " pMechanism    the verification mechanism\n"
      " hKey          verification key\n",
      { ArgULong, ArgMechanism, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "C_VerifyRecover",
      F_C_VerifyRecover,
      "C_VerifyRecover hSession pSignature ulSignatureLen pData pulDataLen\n\n"
      "C_VerifyRecover verifies a signature in a single-part operation where the\n"
      "data is recovered from the signature.\n"
      " hSession          the session's handle\n"
      " pSignature        signature to verify\n"
      " ulSignatureLen    signature length\n"
      " pData             gets signed data\n"
      " pulDataLen        gets signed data len\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_Verify",
      F_C_Verify,
      "C_Verify hSession pData ulDataLen pSignature ulSignatureLen\n\n"
      "C_Verify verifies a signature in a single-part operation where the signature\n"
      "is an appendix to the data and plaintext cannot be recovered from the\n"
      "signature.\n"
      " hSession         the session's handle\n"
      " pData            signed data\n"
      " ulDataLen        length of signed data\n"
      " pSignature       signature\n"
      " ulSignatureLen   signature length*/\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DigestEncryptUpdate",
      F_C_DigestEncryptUpdate,
      "C_DigestEncryptUpdate hSession pPart ulPartLen pEncryptedPart \\\n"
      "    pulEncryptedPartLen\n\n"
      "C_DigestEncryptUpdate continues a multiple-part digesting and encryption\n"
      "operation.\n"
      " hSession              session's handle\n"
      " pPart                 the plaintext data\n"
      " ulPartLen             plaintext length\n"
      " pEncryptedPart        gets ciphertext\n"
      " pulEncryptedPartLen   gets c-text length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DecryptDigestUpdate",
      F_C_DecryptDigestUpdate,
      "C_DecryptDigestUpdate hSession pEncryptedPart ulEncryptedPartLen pPart \\\n"
      "    pulPartLen\n\n"
      "C_DecryptDigestUpdate continues a multiple-part decryption and digesting\n"
      "operation.\n"
      " hSession              session's handle\n"
      " pEncryptedPart        ciphertext\n"
      " ulEncryptedPartLen    ciphertext length\n"
      " pPart                 gets plaintext\n"
      " pulPartLen            gets plaintext len\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_SignEncryptUpdate",
      F_C_SignEncryptUpdate,
      "C_SignEncryptUpdate hSession pPart ulPartLen pEncryptedPart \\\n"
      "    pulEncryptedPartLen\n\n"
      "C_SignEncryptUpdate continues a multiple-part signing and encryption\n"
      "operation.\n"
      " hSession              session's handle\n"
      " pPart                 the plaintext data\n"
      " ulPartLen             plaintext length\n"
      " pEncryptedPart        gets ciphertext\n"
      " pulEncryptedPartLen   gets c-text length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_DecryptVerifyUpdate",
      F_C_DecryptVerifyUpdate,
      "C_DecryptVerifyUpdate hSession pEncryptedPart ulEncryptedPartLen pPart \\\n"
      "    pulPartLen\n\n"
      "C_DecryptVerifyUpdate continues a multiple-part decryption and verify\n"
      "operation.\n"
      " hSession              session's handle\n"
      " pEncryptedPart        ciphertext\n"
      " ulEncryptedPartLen    ciphertext length\n"
      " pPart                 gets plaintext\n"
      " pulPartLen            gets p-text length\n",
      { ArgULong, ArgChar, ArgULong, ArgChar | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_GenerateKeyPair",
      F_C_GenerateKeyPair,
      "C_GenerateKeyPair hSession pMechanism pPublicKeyTemplate \\\n"
      "    ulPublicKeyAttributeCount pPrivateKeyTemplate ulPrivateKeyAttributeCount \\\n"
      "    phPublicKey phPrivateKey\n\n"
      "C_GenerateKeyPair generates a public-key/private-key pair creating new key\n"
      "objects.\n"
      " hSession                      sessionhandle\n"
      " pMechanism                    key-genmech.\n"
      " pPublicKeyTemplate            templatefor pub. key\n"
      " ulPublicKeyAttributeCount     # pub. attrs.\n"
      " pPrivateKeyTemplate           templatefor priv. key\n"
      " ulPrivateKeyAttributeCount    # priv. attrs.\n"
      " phPublicKey                   gets pub. keyhandle\n"
      " phPrivateKey                  getspriv. keyhandle\n",
      { ArgULong, ArgMechanism, ArgAttribute | ArgArray, ArgULong,
        ArgAttribute | ArgArray, ArgULong, ArgULong | ArgOut, ArgULong | ArgOut, ArgNone,
        ArgNone } },
    { "C_GenerateKey",
      F_C_GenerateKey,
      "C_GenerateKey hSession pMechanism pTemplate ulCount phKey\n\n"
      "C_GenerateKey generates a secret key creating a new key object.\n"
      " hSession      the session's handle\n"
      " pMechanism    key generation mech.\n"
      " pTemplate     template for new key\n"
      " ulCount       # of attrs in template\n"
      " phKey         gets handle of new key\n",
      { ArgULong, ArgMechanism, ArgAttribute | ArgArray, ArgULong, ArgULong | ArgOut,
        ArgNone, ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_WrapKey",
      F_C_WrapKey,
      "C_WrapKey hSession pMechanism hWrappingKey hKey pWrappedKey pulWrappedKeyLen\n\n"
      "C_WrapKey wraps (i.e. encrypts) a key.\n"
      " hSession          the session's handle\n"
      " pMechanism        the wrapping mechanism\n"
      " hWrappingKey      wrapping key\n"
      " hKey              key to be wrapped\n"
      " pWrappedKey       gets wrapped key\n"
      " pulWrappedKeyLen  gets wrapped key size\n",
      { ArgULong, ArgMechanism, ArgULong, ArgULong, ArgULong, ArgChar | ArgOut,
        ArgULong | ArgOut, ArgNone, ArgNone, ArgNone } },
    { "C_UnwrapKey",
      F_C_UnwrapKey,
      "C_UnwrapKey hSession pMechanism hUnwrappingKey pWrappedKey ulWrappedKeyLen \\\n"
      "    pTemplate ulAttributeCount phKey\n\n"
      "C_UnwrapKey unwraps (decrypts) a wrapped key creating a new key object.\n"
      " hSession            session's handle\n"
      " pMechanism          unwrapping mech.\n"
      " hUnwrappingKey      unwrapping key\n"
      " pWrappedKey         the wrapped key\n"
      " ulWrappedKeyLen     wrapped key len\n"
      " pTemplate           new key template\n"
      " ulAttributeCount    template length\n"
      " phKey               gets new handle\n",
      { ArgULong, ArgMechanism, ArgULong, ArgChar, ArgULong, ArgAttribute | ArgArray,
        ArgULong, ArgULong | ArgOut, ArgNone, ArgNone } },
    { "C_DeriveKey",
      F_C_DeriveKey,
      "C_DeriveKey hSession pMechanism hBaseKey pTemplate ulAttributeCount phKey\n\n"
      "C_DeriveKey derives a key from a base key creating a new key object.\n"
      " hSession            session's handle\n"
      " pMechanism          key deriv. mech.\n"
      " hBaseKey            base key\n"
      " pTemplate           new key template\n"
      " ulAttributeCount    template length\n"
      " phKey               gets new handle\n",
      { ArgULong, ArgMechanism, ArgULong, ArgAttribute | ArgArray, ArgULong,
        ArgULong | ArgOut, ArgNone, ArgNone, ArgNone, ArgNone } },
    { "C_SeedRandom",
      F_C_SeedRandom,
      "C_SeedRandom hSession pSeed ulSeedLen\n\n"
      "C_SeedRandom mixes additional seed material into the token's random number\n"
      "generator.\n"
      " hSession    the session's handle\n"
      " pSeed       the seed material\n"
      " ulSeedLen   length of seed material\n",
      { ArgULong, ArgChar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_GenerateRandom",
      F_C_GenerateRandom,
      "C_GenerateRandom hSession RandomData ulRandomLen\n\n"
      "C_GenerateRandom generates random data.\n"
      " hSession      the session's handle\n"
      " RandomData    receives the random data\n"
      " ulRandomLen   # of bytes to generate\n",
      { ArgULong, ArgChar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_GetFunctionStatus",
      F_C_GetFunctionStatus,
      "C_GetFunctionStatus hSession\n\n"
      "C_GetFunctionStatus is a legacy function; it obtains an updated status of\n"
      "a function running in parallel with an application.\n"
      " hSession   the session's handle\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_CancelFunction",
      F_C_CancelFunction,
      "C_CancelFunction hSession\n\n"
      "C_CancelFunction is a legacy function; it cancels a function running in\n"
      "parallel.\n"
      " hSession   the session's handle\n",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "C_WaitForSlotEvent",
      F_C_WaitForSlotEvent,
      "C_WaitForSlotEvent flags pSlot pRserved\n\n"
      "C_WaitForSlotEvent waits for a slot event (token insertion removal etc.)\n"
      "to occur.\n"
      " flags          blocking/nonblocking flag\n"
      " pSlot    location that receives the slot ID\n"
      " pRserved    reserved.  Should be NULL_PTR\n",
      { ArgULong, ArgULong | ArgArray, ArgVar, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "NewArray",
      F_NewArray,
      "NewArray varName varType array size\n\n"
      "Creates a new array variable.\n"
      " varName     variable name of the new array\n"
      " varType     data type of the new array\n"
      " size        number of elements in the array\n",
      { ArgVar | ArgNew, ArgVar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "NewInitArg",
      F_NewInitializeArgs,
      "NewInitArg varName flags string\n\n"
      "Creates a new init variable.\n"
      " varName     variable name of the new initArg\n"
      " flags       value to set the flags field\n"
      " string      string parameter for init arg\n",
      { ArgVar | ArgNew, ArgULong, ArgVar | ArgNew, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "NewTemplate",
      F_NewTemplate,
      "NewTemplate varName attributeList\n\n"
      "Create a new empty template and populate the attribute list\n"
      " varName        variable name of the new template\n"
      " attributeList  comma separated list of CKA_ATTRIBUTE types\n",
      { ArgVar | ArgNew, ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "NewMechanism",
      F_NewMechanism,
      "NewMechanism varName mechanismType\n\n"
      "Create a new CK_MECHANISM object with type NULL parameters and specified type\n"
      " varName        variable name of the new mechansim\n"
      " mechanismType  CKM_ mechanism type value to set int the type field\n",
      { ArgVar | ArgNew, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "BuildTemplate",
      F_BuildTemplate,
      "BuildTemplate template\n\n"
      "Allocates space for the value in a template which has the sizes filled in,\n"
      "but no values allocated yet.\n"
      " template        variable name of the template\n",
      { ArgAttribute, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "SetTemplate",
      F_SetTemplate,
      "SetTemplate template index value\n\n"
      "Sets a particular element of a template to a CK_ULONG\n"
      " template        variable name of the template\n"
      " index           index into the template to the element to change\n"
      " value           32 bit value to set in the template\n",
      { ArgAttribute, ArgULong, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "SetString",
      F_SetStringVar,
      "SetString varName string\n\n"
      "Sets a particular variable to a string value\n"
      " variable        variable name of new string\n"
      " string          String to set the variable to\n",
      { ArgVar | ArgNew, ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Set",
      F_SetVar,
      "Set varName value\n\n"
      "Sets a particular variable to CK_ULONG\n"
      " variable        name of the new variable\n"
      " value           32 bit value to set variable to\n",
      { ArgVar | ArgNew, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Print",
      F_Print,
      "Print varName\n\n"
      "prints a variable\n"
      " variable        name of the variable to print\n",
      { ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "Delete",
      F_Delete,
      "Delete varName\n\n"
      "delete a variable\n"
      " variable        name of the variable to delete\n",
      { ArgVar | ArgNew, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Load",
      F_Load,
      "load libraryName\n\n"
      "load a pkcs #11 module\n"
      " libraryName        Name of a shared library\n",
      { ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "Save",
      F_SaveVar,
      "Save filename variable\n\n"
      "Saves the binary value of 'variable' in file 'filename'\n"
      " fileName        target file to save the variable in\n"
      " variable        variable to save\n",
      { ArgVar | ArgNew, ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Restore",
      F_RestoreVar,
      "Restore filename variable\n\n"
      "Restores a variable from a file\n"
      " fileName        target file to restore the variable from\n"
      " variable        variable to restore\n",
      { ArgVar | ArgNew, ArgVar, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Increment",
      F_Increment,
      "Increment variable value\n\n"
      "Increment a variable by value\n",
      { ArgVar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "Decrement",
      F_Decrement,
      "Decrement variable value\n\n"
      "Decrement a variable by value\n",
      { ArgVar, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "List",
      F_List,
      "List all the variables\n",
      { ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "Unload",
      F_Unload,
      "Unload the currrently loaded PKCS #11 library\n",
      { ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "Run",
      F_Run,
      "Run filename\n\n"
      "reads filename as script of commands to execute\n",
      { ArgVar | ArgNew, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "Time",
      F_Time,
      "Time pkcs11 command\n\n"
      "Execute a pkcs #11 command and time the results\n",
      { ArgVar | ArgFull, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "System",
      F_System,
      "Set System Flag",
      { ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
    { "LoopRun",
      F_Loop,
      "LoopRun filename var start end step\n\n"
      "Run in a loop. Loop exit if scrip does and explicit quit (Quit QuitIf etc.)",
      { ArgVar | ArgNew, ArgVar | ArgNew, ArgULong, ArgULong, ArgULong, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone } },
    { "Help",
      F_Help,
      "Help [command]\n\n"
      "print general help, or help for a specific command\n",
      { ArgVar | ArgOpt, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "QuitIf",
      F_QuitIf,
      "QuitIf arg1 comparator arg2\n\n"
      "Exit from this program if Condition is valid, valid comparators:\n"
      "  < > <= >= = !=\n",
      { ArgULong, ArgVar | ArgNew, ArgULong, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone } },
    { "QuitIfString",
      F_QuitIfString,
      "QuitIfString arg1 comparator arg2\n\n"
      "Exit from this program if Condition is valid, valid comparators:\n"
      "  = !=\n",
      { ArgVar | ArgNew, ArgVar | ArgNew, ArgVar | ArgNew, ArgNone, ArgNone, ArgNone,
        ArgNone, ArgNone, ArgNone, ArgNone } },
    { "Quit",
      F_Quit,
      "Exit from this program",
      { ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone, ArgNone,
        ArgNone } },
};

const Commands *commands = &_commands[0];
const int commandCount = sizeof(_commands) / sizeof(_commands[0]);

const Topics _topics[] = {
    { "variables",
      "Variables are random strings of characters. These should begin with alpha\n"
      " characters, and should not contain any spaces, nor should they match any\n"
      " built-in constants. There is some checking in the code for these things,\n"
      " but it's not 100% and using invalid variable names can cause problems.\n"
      " Variables are created by any 'OUT' parameter. If the variable does not\n"
      " exist, it will be created. For in parameters variables must already exist.\n" },
    { "constants",
      "pk11util recognizes *lots* of constants. All CKA_, CKF_, CKO_, CKU_, CKS_,\n"
      " CKC_, CKK_, CKH_, CKM_, CKT_ values from the PKCS #11 spec are recognized.\n"
      " Constants can be specified with their fully qualified CK?_ value, or the\n"
      " prefix can be dropped. Constants are matched case insensitve.\n" },
    { "arrays",
      "Arrays are special variables which represent 'C' arrays. Each array \n"
      " variable can be referenced as a group (using just the name), or as \n"
      " individual elements (with the [int] operator). Example:\n"
      "      print myArray    # prints the full array.\n"
      "      print myArray[3] # prints the 3rd elemement of the array \n" },
    { "sizes",
      "Size operaters returns the size in bytes of a variable, or the number of\n"
      " elements in an array.\n"
      "    size(var) and sizeof(var) return the size of var in bytes.\n"
      "    sizea(var) and sizeofarray(var) return the number of elements in var.\n"
      "       If var is not an array, sizea(var) returns 1.\n" },
};

const Topics *topics = &_topics[0];
const int topicCount = sizeof(_topics) / sizeof(_topics[0]);

const char *
getName(CK_ULONG value, ConstType type)
{
    unsigned int i;

    for (i = 0; i < constCount; i++) {
        if (consts[i].type == type && consts[i].value == value) {
            return consts[i].name;
        }
        if (type == ConstNone && consts[i].value == value) {
            return consts[i].name;
        }
    }

    return NULL;
}

const char *
getNameFromAttribute(CK_ATTRIBUTE_TYPE type)
{
    return getName(type, ConstAttribute);
}

unsigned int
totalKnownType(ConstType type)
{
    unsigned int count = 0;
    unsigned int i;

    for (i = 0; i < constCount; i++) {
        if (consts[i].type == type)
            count++;
    }
    return count;
}
