|
Packit |
8681c6 |
/*
|
|
Packit |
8681c6 |
* COPYRIGHT (c) International Business Machines Corp. 2001-2017
|
|
Packit |
8681c6 |
*
|
|
Packit |
8681c6 |
* This program is provided under the terms of the Common Public License,
|
|
Packit |
8681c6 |
* version 1.0 (CPL-1.0). Any use, reproduction or distribution for this
|
|
Packit |
8681c6 |
* software constitutes recipient's acceptance of CPL-1.0 terms which can be
|
|
Packit |
8681c6 |
* found in the file LICENSE file or at
|
|
Packit |
8681c6 |
* https://opensource.org/licenses/cpl1.0.php
|
|
Packit |
8681c6 |
*/
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#include <errno.h>
|
|
Packit |
8681c6 |
#include <signal.h>
|
|
Packit |
8681c6 |
#include <stdarg.h>
|
|
Packit |
8681c6 |
#include <sys/types.h>
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#include "log.h"
|
|
Packit |
8681c6 |
#include "slotmgr.h"
|
|
Packit |
8681c6 |
#include "err.h"
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo SysErrorInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(EPERM),
|
|
Packit |
8681c6 |
CONSTINFO(ENOENT),
|
|
Packit |
8681c6 |
CONSTINFO(ESRCH),
|
|
Packit |
8681c6 |
CONSTINFO(EINTR),
|
|
Packit |
8681c6 |
CONSTINFO(EIO),
|
|
Packit |
8681c6 |
CONSTINFO(ENXIO),
|
|
Packit |
8681c6 |
CONSTINFO(E2BIG),
|
|
Packit |
8681c6 |
CONSTINFO(ENOEXEC),
|
|
Packit |
8681c6 |
CONSTINFO(EBADF),
|
|
Packit |
8681c6 |
CONSTINFO(ECHILD),
|
|
Packit |
8681c6 |
CONSTINFO(EAGAIN),
|
|
Packit |
8681c6 |
CONSTINFO(ENOMEM),
|
|
Packit |
8681c6 |
CONSTINFO(EACCES),
|
|
Packit |
8681c6 |
CONSTINFO(EFAULT),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTBLK),
|
|
Packit |
8681c6 |
CONSTINFO(EBUSY),
|
|
Packit |
8681c6 |
CONSTINFO(EEXIST),
|
|
Packit |
8681c6 |
CONSTINFO(EXDEV),
|
|
Packit |
8681c6 |
CONSTINFO(ENODEV),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTDIR),
|
|
Packit |
8681c6 |
CONSTINFO(EISDIR),
|
|
Packit |
8681c6 |
CONSTINFO(EINVAL),
|
|
Packit |
8681c6 |
CONSTINFO(ENFILE),
|
|
Packit |
8681c6 |
CONSTINFO(EMFILE),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTTY),
|
|
Packit |
8681c6 |
CONSTINFO(ETXTBSY),
|
|
Packit |
8681c6 |
CONSTINFO(EFBIG),
|
|
Packit |
8681c6 |
CONSTINFO(ENOSPC),
|
|
Packit |
8681c6 |
CONSTINFO(ESPIPE),
|
|
Packit |
8681c6 |
CONSTINFO(EROFS),
|
|
Packit |
8681c6 |
CONSTINFO(EMLINK),
|
|
Packit |
8681c6 |
CONSTINFO(EPIPE),
|
|
Packit |
8681c6 |
CONSTINFO(EDOM),
|
|
Packit |
8681c6 |
CONSTINFO(ERANGE),
|
|
Packit |
8681c6 |
CONSTINFO(ENOMSG),
|
|
Packit |
8681c6 |
CONSTINFO(EIDRM),
|
|
Packit |
8681c6 |
#ifdef ECHRNG
|
|
Packit |
8681c6 |
CONSTINFO(ECHRNG),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EL2NSYNC
|
|
Packit |
8681c6 |
CONSTINFO(EL2NSYNC),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EL3HLT
|
|
Packit |
8681c6 |
CONSTINFO(EL3HLT),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EL3RST
|
|
Packit |
8681c6 |
CONSTINFO(EL3RST),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ELNRNG
|
|
Packit |
8681c6 |
CONSTINFO(ELNRNG),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EUNATCH
|
|
Packit |
8681c6 |
CONSTINFO(EUNATCH),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ENOCSI
|
|
Packit |
8681c6 |
CONSTINFO(ENOCSI),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EL2HLT
|
|
Packit |
8681c6 |
CONSTINFO(EL2HLT),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
CONSTINFO(EDEADLK),
|
|
Packit |
8681c6 |
CONSTINFO(ESTALE),
|
|
Packit |
8681c6 |
CONSTINFO(EWOULDBLOCK),
|
|
Packit |
8681c6 |
CONSTINFO(EINPROGRESS),
|
|
Packit |
8681c6 |
CONSTINFO(EALREADY),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTSOCK),
|
|
Packit |
8681c6 |
CONSTINFO(EDESTADDRREQ),
|
|
Packit |
8681c6 |
CONSTINFO(EMSGSIZE),
|
|
Packit |
8681c6 |
CONSTINFO(EPROTOTYPE),
|
|
Packit |
8681c6 |
CONSTINFO(ENOPROTOOPT),
|
|
Packit |
8681c6 |
CONSTINFO(EPROTONOSUPPORT),
|
|
Packit |
8681c6 |
CONSTINFO(ESOCKTNOSUPPORT),
|
|
Packit |
8681c6 |
CONSTINFO(EOPNOTSUPP),
|
|
Packit |
8681c6 |
CONSTINFO(EPFNOSUPPORT),
|
|
Packit |
8681c6 |
CONSTINFO(EAFNOSUPPORT),
|
|
Packit |
8681c6 |
CONSTINFO(EADDRINUSE),
|
|
Packit |
8681c6 |
CONSTINFO(EADDRNOTAVAIL),
|
|
Packit |
8681c6 |
CONSTINFO(ENETDOWN),
|
|
Packit |
8681c6 |
CONSTINFO(ENETUNREACH),
|
|
Packit |
8681c6 |
CONSTINFO(ENETRESET),
|
|
Packit |
8681c6 |
CONSTINFO(ECONNABORTED),
|
|
Packit |
8681c6 |
CONSTINFO(ECONNRESET),
|
|
Packit |
8681c6 |
CONSTINFO(ENOBUFS),
|
|
Packit |
8681c6 |
CONSTINFO(EISCONN),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTCONN),
|
|
Packit |
8681c6 |
CONSTINFO(ESHUTDOWN),
|
|
Packit |
8681c6 |
CONSTINFO(ETIMEDOUT),
|
|
Packit |
8681c6 |
CONSTINFO(ECONNREFUSED),
|
|
Packit |
8681c6 |
CONSTINFO(EHOSTDOWN),
|
|
Packit |
8681c6 |
CONSTINFO(EHOSTUNREACH),
|
|
Packit |
8681c6 |
#ifdef ERESTART
|
|
Packit |
8681c6 |
CONSTINFO(ERESTART),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
CONSTINFO(EUSERS),
|
|
Packit |
8681c6 |
CONSTINFO(ELOOP),
|
|
Packit |
8681c6 |
CONSTINFO(ENAMETOOLONG),
|
|
Packit |
8681c6 |
CONSTINFO(ENOTEMPTY),
|
|
Packit |
8681c6 |
CONSTINFO(EDQUOT),
|
|
Packit |
8681c6 |
CONSTINFO(EREMOTE),
|
|
Packit |
8681c6 |
CONSTINFO(ENOSYS),
|
|
Packit |
8681c6 |
CONSTINFO(ETOOMANYREFS),
|
|
Packit |
8681c6 |
CONSTINFO(EILSEQ),
|
|
Packit |
8681c6 |
CONSTINFO(ECANCELED),
|
|
Packit |
8681c6 |
#ifdef ENOSR
|
|
Packit |
8681c6 |
CONSTINFO(ENOSR),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ETIME
|
|
Packit |
8681c6 |
CONSTINFO(ETIME),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EBADMSG
|
|
Packit |
8681c6 |
CONSTINFO(EBADMSG),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EPROTO
|
|
Packit |
8681c6 |
CONSTINFO(EPROTO),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ENODATA
|
|
Packit |
8681c6 |
CONSTINFO(ENODATA),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ENOSTR
|
|
Packit |
8681c6 |
CONSTINFO(ENOSTR),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
CONSTINFO(ENOTSUP),
|
|
Packit |
8681c6 |
#ifdef EMULTIHOP
|
|
Packit |
8681c6 |
CONSTINFO(EMULTIHOP),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef ENOLINK
|
|
Packit |
8681c6 |
CONSTINFO(ENOLINK),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef EOVERFLOW
|
|
Packit |
8681c6 |
CONSTINFO(EOVERFLOW),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static int SysErrorSize = (sizeof(SysErrorInfo) / sizeof(SysErrorInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo SignalInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(SIGHUP),
|
|
Packit |
8681c6 |
CONSTINFO(SIGINT),
|
|
Packit |
8681c6 |
CONSTINFO(SIGQUIT),
|
|
Packit |
8681c6 |
CONSTINFO(SIGILL),
|
|
Packit |
8681c6 |
CONSTINFO(SIGTRAP),
|
|
Packit |
8681c6 |
CONSTINFO(SIGABRT),
|
|
Packit |
8681c6 |
CONSTINFO(SIGFPE),
|
|
Packit |
8681c6 |
CONSTINFO(SIGKILL),
|
|
Packit |
8681c6 |
CONSTINFO(SIGBUS),
|
|
Packit |
8681c6 |
CONSTINFO(SIGSEGV),
|
|
Packit |
8681c6 |
CONSTINFO(SIGSYS),
|
|
Packit |
8681c6 |
CONSTINFO(SIGPIPE),
|
|
Packit |
8681c6 |
CONSTINFO(SIGALRM),
|
|
Packit |
8681c6 |
CONSTINFO(SIGTERM),
|
|
Packit |
8681c6 |
CONSTINFO(SIGURG),
|
|
Packit |
8681c6 |
CONSTINFO(SIGSTOP),
|
|
Packit |
8681c6 |
CONSTINFO(SIGTSTP),
|
|
Packit |
8681c6 |
CONSTINFO(SIGCONT),
|
|
Packit |
8681c6 |
CONSTINFO(SIGCHLD),
|
|
Packit |
8681c6 |
CONSTINFO(SIGTTIN),
|
|
Packit |
8681c6 |
CONSTINFO(SIGTTOU),
|
|
Packit |
8681c6 |
CONSTINFO(SIGIO),
|
|
Packit |
8681c6 |
CONSTINFO(SIGXCPU),
|
|
Packit |
8681c6 |
CONSTINFO(SIGXFSZ),
|
|
Packit |
8681c6 |
CONSTINFO(SIGWINCH),
|
|
Packit |
8681c6 |
#ifdef SIGPWR
|
|
Packit |
8681c6 |
CONSTINFO(SIGPWR),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
CONSTINFO(SIGUSR1),
|
|
Packit |
8681c6 |
CONSTINFO(SIGUSR2),
|
|
Packit |
8681c6 |
CONSTINFO(SIGPROF),
|
|
Packit |
8681c6 |
CONSTINFO(SIGVTALRM),
|
|
Packit |
8681c6 |
CONSTINFO(SIGIOT),
|
|
Packit |
8681c6 |
#ifdef SIGCLD
|
|
Packit |
8681c6 |
CONSTINFO(SIGCLD),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#ifdef SIGPOLL
|
|
Packit |
8681c6 |
CONSTINFO(SIGPOLL),
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
#if 0
|
|
Packit |
8681c6 |
CONSTINFO(SIG_DFL),
|
|
Packit |
8681c6 |
CONSTINFO(SIG_IGN),
|
|
Packit |
8681c6 |
CONSTINFO(SIG_HOLD),
|
|
Packit |
8681c6 |
CONSTINFO(SIG_CATCH),
|
|
Packit |
8681c6 |
CONSTINFO(SIG_ERR),
|
|
Packit |
8681c6 |
#endif /* 0 */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static int SignalInfoSize = (sizeof(SignalInfo) / sizeof(SignalInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsReturnInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(CKR_OK),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_CANCEL),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_HOST_MEMORY),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SLOT_ID_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_GENERAL_ERROR),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_FUNCTION_FAILED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ARGUMENTS_BAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_NO_EVENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_NEED_TO_CREATE_THREADS),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_CANT_LOCK),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ATTRIBUTE_READ_ONLY),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ATTRIBUTE_SENSITIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ATTRIBUTE_TYPE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ATTRIBUTE_VALUE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DATA_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DATA_LEN_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DEVICE_ERROR),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DEVICE_MEMORY),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DEVICE_REMOVED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ENCRYPTED_DATA_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_ENCRYPTED_DATA_LEN_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_FUNCTION_CANCELED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_FUNCTION_NOT_PARALLEL),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_FUNCTION_NOT_SUPPORTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_HANDLE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_SIZE_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_TYPE_INCONSISTENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_NOT_NEEDED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_CHANGED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_NEEDED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_INDIGESTIBLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_FUNCTION_NOT_PERMITTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_NOT_WRAPPABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_KEY_UNEXTRACTABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_MECHANISM_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_MECHANISM_PARAM_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_OBJECT_HANDLE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_OPERATION_ACTIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_OPERATION_NOT_INITIALIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_PIN_INCORRECT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_PIN_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_PIN_LEN_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_PIN_EXPIRED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_PIN_LOCKED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_CLOSED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_COUNT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_HANDLE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_PARALLEL_NOT_SUPPORTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_READ_ONLY),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_EXISTS),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_READ_ONLY_EXISTS),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SESSION_READ_WRITE_SO_EXISTS),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SIGNATURE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SIGNATURE_LEN_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_TEMPLATE_INCOMPLETE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_TEMPLATE_INCONSISTENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_TOKEN_NOT_PRESENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_TOKEN_NOT_RECOGNIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_TOKEN_WRITE_PROTECTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_UNWRAPPING_KEY_HANDLE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_UNWRAPPING_KEY_SIZE_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_ALREADY_LOGGED_IN),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_NOT_LOGGED_IN),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_PIN_NOT_INITIALIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_TYPE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_ANOTHER_ALREADY_LOGGED_IN),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_USER_TOO_MANY_TYPES),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_WRAPPED_KEY_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_WRAPPED_KEY_LEN_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_WRAPPING_KEY_HANDLE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_WRAPPING_KEY_SIZE_RANGE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_WRAPPING_KEY_TYPE_INCONSISTENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_RANDOM_SEED_NOT_SUPPORTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_RANDOM_NO_RNG),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_DOMAIN_PARAMS_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_CURVE_NOT_SUPPORTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_BUFFER_TOO_SMALL),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_SAVED_STATE_INVALID),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_INFORMATION_SENSITIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_STATE_UNSAVEABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_CRYPTOKI_NOT_INITIALIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_CRYPTOKI_ALREADY_INITIALIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_MUTEX_BAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_MUTEX_NOT_LOCKED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_FUNCTION_REJECTED),
|
|
Packit |
8681c6 |
CONSTINFO(CKR_VENDOR_DEFINED),
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static int PkcsReturnSize =
|
|
Packit |
8681c6 |
(sizeof(PkcsReturnInfo) / sizeof(PkcsReturnInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsFlagsInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO((CKF_RNG | CKF_HW | CKF_LIBRARY_CANT_CREATE_OS_THREADS |
|
|
Packit |
8681c6 |
CKF_TOKEN_PRESENT)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_REMOVABLE_DEVICE | CKF_OS_LOCKING_OK | CKF_RW_SESSION |
|
|
Packit |
8681c6 |
CKF_WRITE_PROTECTED)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_SERIAL_SESSION | CKF_HW_SLOT | CKF_LOGIN_REQUIRED)),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_USER_PIN_INITIALIZED),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_RESTORE_KEY_NOT_NEEDED),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_CLOCK_ON_TOKEN),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_PROTECTED_AUTHENTICATION_PATH | CKF_ENCRYPT)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_DUAL_CRYPTO_OPERATIONS | CKF_DECRYPT)),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_DIGEST),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SIGN),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SIGN_RECOVER),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_VERIFY),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_VERIFY_RECOVER),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_GENERATE),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_GENERATE_KEY_PAIR | CKF_USER_PIN_COUNT_LOW)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_USER_PIN_FINAL_TRY | CKF_WRAP)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_UNWRAP | CKF_USER_PIN_LOCKED)),
|
|
Packit |
8681c6 |
CONSTINFO((CKF_DERIVE /*| CKF_USER_PIN_MANUFACT_VALUE */ )),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SO_PIN_DERIVED),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SO_CARD),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SO_PIN_COUNT_LOW),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SO_PIN_FINAL_TRY),
|
|
Packit |
8681c6 |
CONSTINFO(CKF_SO_PIN_LOCKED),
|
|
Packit |
8681c6 |
/*CONSTINFO(CKF_SO_PIN_MANUFACT_VALUE), */
|
|
Packit |
8681c6 |
CONSTINFO(CKF_EXTENSION),
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static int PkcsFlagsSize = (sizeof(PkcsFlagsInfo) / sizeof(PkcsFlagsInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsMechanismInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RSA_PKCS_KEY_PAIR_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RSA_9796),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RSA_X_509),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD2_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD5_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA1_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DSA_KEY_PAIR_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DSA),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DSA_SHA1),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DH_PKCS_KEY_PAIR_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DH_PKCS_DERIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC2_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC4_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC4),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES2_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_DES3_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CDMF_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD2),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD2_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD2_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD5),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD5_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD5_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA_1),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA_1_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA_1_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_224),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_224_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_224_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_256),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_256_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_256_HMAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST3_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST5_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CAST128_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_RC5_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_ECB),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_MAC_GENERAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IDEA_CBC_PAD),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_GENERIC_SECRET_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CONCATENATE_BASE_AND_KEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CONCATENATE_BASE_AND_DATA),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_CONCATENATE_DATA_AND_BASE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_XOR_BASE_AND_DATA),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_EXTRACT_KEY_FROM_KEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SSL3_PRE_MASTER_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SSL3_MASTER_KEY_DERIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SSL3_KEY_AND_MAC_DERIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SSL3_MD5_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SSL3_SHA1_MAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD5_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_MD2_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA1_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD2_DES_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD5_DES_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD5_CAST_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD5_CAST3_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD5_CAST5_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_MD5_CAST128_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_CAST5_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_CAST128_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_RC4_128),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_RC4_40),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_DES3_EDE_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_DES2_EDE_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_RC2_128_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBE_SHA1_RC2_40_CBC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_PBA_SHA1_WITH_SHA1_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_KEY_WRAP_LYNKS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_KEY_WRAP_SET_OAEP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_ECB64),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_CBC64),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_OFB64),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_CFB64),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_CFB32),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_CFB16),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_CFB8),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_WRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_PRIVATE_WRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SKIPJACK_RELAYX),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_KEA_KEY_PAIR_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_KEA_KEY_DERIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_FORTEZZA_TIMESTAMP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_ECB128),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_ECB96),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_CBC128),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_COUNTER),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_SHUFFLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_BATON_WRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_KEY_PAIR_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_SHA1),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_SHA224),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_SHA256),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_SHA384),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_ECDSA_SHA512),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_RSA_PKCS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224_RSA_PKCS_PSS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256_RSA_PKCS_PSS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384_RSA_PKCS_PSS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_RSA_PKCS_PSS),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA224_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA256_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA384_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_SHA512_KEY_DERIVATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_KEY_GEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_ECB128),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_CBC128),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_COUNTER),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_SHUFFLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_JUNIPER_WRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_FASTHASH),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_VENDOR_DEFINED),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_224),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_256),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_384),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_512),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_224_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_256_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_384_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_SHA3_512_HMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_CMAC),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_EC_C25519),
|
|
Packit Service |
8aa27d |
CONSTINFO(CKM_IBM_ED25519_SHA512),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_EC_C448),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_ED448_SHA3),
|
|
Packit |
8681c6 |
CONSTINFO(CKM_IBM_DILITHIUM),
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static unsigned int PkcsMechanismSize =
|
|
Packit |
8681c6 |
(sizeof(PkcsMechanismInfo) / sizeof(PkcsMechanismInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsObjectInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(CKO_DATA),
|
|
Packit |
8681c6 |
CONSTINFO(CKO_CERTIFICATE),
|
|
Packit |
8681c6 |
CONSTINFO(CKO_PUBLIC_KEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKO_PRIVATE_KEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKO_SECRET_KEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKO_VENDOR_DEFINED),
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static unsigned int PkcsObjectSize =
|
|
Packit |
8681c6 |
(sizeof(PkcsObjectInfo) / sizeof(PkcsObjectInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsKeyInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(CKK_RSA),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_DSA),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_DH),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_ECDSA),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_KEA),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_GENERIC_SECRET),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_RC2),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_RC4),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_DES),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_DES2),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_DES3),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_CAST),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_CAST3),
|
|
Packit |
8681c6 |
CONSTINFO((CKK_CAST5 | CKK_CAST128)),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_RC5),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_IDEA),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_SKIPJACK),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_BATON),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_JUNIPER),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_CDMF),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_IBM_PQC_DILITHIUM),
|
|
Packit |
8681c6 |
CONSTINFO(CKK_VENDOR_DEFINED),
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static unsigned int PkcsKeySize =
|
|
Packit |
8681c6 |
(sizeof(PkcsKeyInfo) / sizeof(PkcsKeyInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsAttributeInfo[] = {
|
|
Packit |
8681c6 |
CONSTINFO(CKA_CLASS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_TOKEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PRIVATE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_LABEL),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_APPLICATION),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VALUE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_CERTIFICATE_TYPE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_ISSUER),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SERIAL_NUMBER),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_KEY_TYPE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SUBJECT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_ID),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SENSITIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_ENCRYPT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_DECRYPT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_WRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_UNWRAP),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SIGN),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SIGN_RECOVER),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VERIFY),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VERIFY_RECOVER),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_DERIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_START_DATE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_END_DATE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_MODULUS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_MODULUS_BITS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PUBLIC_EXPONENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PRIVATE_EXPONENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PRIME_1),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PRIME_2),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_EXPONENT_1),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_EXPONENT_2),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_COEFFICIENT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_PRIME),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_SUBPRIME),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_BASE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VALUE_BITS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VALUE_LEN),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_EXTRACTABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_LOCAL),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_NEVER_EXTRACTABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_ALWAYS_SENSITIVE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_MODIFIABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_ECDSA_PARAMS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_EC_POINT),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_VENDOR_DEFINED),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_OPAQUE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_RESTRICTABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_NEVER_MODIFIABLE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_RETAINKEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_ATTRBOUND),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_KEYTYPE),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_CV),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_MACKEY),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_USE_AS_DATA),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_STRUCT_PARAMS),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_STD_COMPLIANCE1),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_NSS_MOZILLA_CA_POLICY),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_KEYFORM),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_RHO),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_SEED),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_TR),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_S1),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_S2),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_T0),
|
|
Packit |
8681c6 |
CONSTINFO(CKA_IBM_DILITHIUM_T1),
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static unsigned int PkcsAttributeSize =
|
|
Packit |
8681c6 |
(sizeof(PkcsAttributeInfo) / sizeof(PkcsAttributeInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
#if 0
|
|
Packit |
8681c6 |
static ConstInfo PkcsSessionStateInfo[] = {
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
CONSTINFO(CKS_RO_PUBLIC_SESSION),
|
|
Packit |
8681c6 |
CONSTINFO(CKS_RO_USER_FUNCTIONS),
|
|
Packit |
8681c6 |
CONSTINFO(CKS_RW_PUBLIC_SESSION),
|
|
Packit |
8681c6 |
CONSTINFO(CKS_RW_USER_FUNCTIONS),
|
|
Packit |
8681c6 |
CONSTINFO(CKS_RW_SO_FUNCTIONS),
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
#endif
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static ConstInfo PkcsResponseSeverityInfo[] = {
|
|
Packit |
8681c6 |
{SEV_EXPECTED, "expected"},
|
|
Packit |
8681c6 |
{SEV_ALLOWED, "allowed"},
|
|
Packit |
8681c6 |
{SEV_ERROR, "an error"},
|
|
Packit |
8681c6 |
{SEV_FATAL, "fatal"},
|
|
Packit |
8681c6 |
};
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
static unsigned int PkcsResponseSeveritySize =
|
|
Packit |
8681c6 |
(sizeof(PkcsResponseSeverityInfo) / sizeof(PkcsResponseSeverityInfo[0]));
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *ConstName(pConstInfo pInfoArray,
|
|
Packit |
8681c6 |
unsigned int InfoArraySize,
|
|
Packit |
8681c6 |
unsigned int ConstValue)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
unsigned int i;
|
|
Packit |
8681c6 |
unsigned const char *retval = NULL;
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
for (i = 0; i < InfoArraySize; i++) {
|
|
Packit |
8681c6 |
if (pInfoArray[i].Code == ConstValue) {
|
|
Packit |
8681c6 |
retval = (unsigned char *)&(pInfoArray[i].Name[0]);
|
|
Packit |
8681c6 |
break;
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
/* end if */
|
|
Packit |
8681c6 |
} /* end for i */
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
if (retval == NULL) {
|
|
Packit |
8681c6 |
if (ConstValue == 0) {
|
|
Packit |
8681c6 |
retval = (const unsigned char *) "NULL";
|
|
Packit |
8681c6 |
} else {
|
|
Packit |
8681c6 |
retval = (const unsigned char *) "\"<*>CONSTANT NOT FOUND<*>\"";
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
return retval;
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *SignalConst(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(SignalInfo, SignalInfoSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *SysConst(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(SysErrorInfo, SysErrorSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsReturn(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsReturnInfo, PkcsReturnSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsFlags(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsFlagsInfo, PkcsFlagsSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsMechanism(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsMechanismInfo, PkcsMechanismSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsObject(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsObjectInfo, PkcsObjectSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsKey(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsKeyInfo, PkcsKeySize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *PkcsAttribute(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsAttributeInfo, PkcsAttributeSize, Val);
|
|
Packit |
8681c6 |
}
|
|
Packit |
8681c6 |
|
|
Packit |
8681c6 |
const unsigned char *ResponseSeverity(unsigned int Val)
|
|
Packit |
8681c6 |
{
|
|
Packit |
8681c6 |
return ConstName(PkcsResponseSeverityInfo, PkcsResponseSeveritySize, Val);
|
|
Packit |
8681c6 |
}
|