# PaCkAgE DaTaStReAm pkcs11-helper 1 1797 # end of header 07070100193ed3000081a40000000000000000000000014e69931b0000012b000000b600010002ffffffffffffffff0000001600000000pkcs11-helper/pkginfoPKG=pkcs11-helper NAME=pkcs11-helper 1.09 i86pc Solaris 11 VERSION=1.09 PSTAMP=9th September 2011 VENDOR=Alon Bar-Lev EMAIL=http://www.opensc-project.org/opensc/wiki/pkcs11-helper DESC=PKCS#11 interaction library ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 07070100193ed2000081a40000000000000000000000014e69931b00000a22000000b600010002ffffffffffffffff0000001500000000pkcs11-helper/pkgmap: 1 1797 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/include 0755 root root 1 d none /usr/local/include/pkcs11-helper-1.0 0755 root root 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11.h 0644 root root 42442 52127 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-certificate.h 0644 root root 16575 28286 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-core.h 0644 root root 14452 49548 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-data.h 0644 root root 6307 53053 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-def.h 0644 root root 3224 57759 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-engines.h 0644 root root 7053 40269 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-openssl.h 0644 root root 5455 57522 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-token.h 0644 root root 6138 38135 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-version.h 0644 root root 3111 46639 1315536417 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/libpkcs11-helper.a 0644 root root 375248 41788 1315536417 1 f none /usr/local/lib/libpkcs11-helper.la 0755 root root 1214 41488 1315536417 1 s none /usr/local/lib/libpkcs11-helper.so=libpkcs11-helper.so.1.0.0 1 s none /usr/local/lib/libpkcs11-helper.so.1=libpkcs11-helper.so.1.0.0 1 f none /usr/local/lib/libpkcs11-helper.so.1.0.0 0755 root root 331520 10486 1315536417 1 d none /usr/local/lib/pkgconfig 0755 root root 1 f none /usr/local/lib/pkgconfig/libpkcs11-helper-1.pc 0644 root root 397 36048 1315536417 1 d none /usr/local/share 0755 root root 1 d none /usr/local/share/aclocal 0755 root root 1 f none /usr/local/share/aclocal/pkcs11-helper-1.m4 0644 root root 3425 12705 1315536417 1 d none /usr/local/share/doc 0755 root root 1 d none /usr/local/share/doc/pkcs11-helper 0755 root root 1 f none /usr/local/share/doc/pkcs11-helper/COPYING 0644 root root 4708 63246 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.BSD 0644 root root 1544 56868 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.GPL 0644 root root 17989 29856 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/README 0644 root root 1206 40387 1315536418 1 d none /usr/local/share/doc/pkcs11-helper/api 0755 root root 1 d none /usr/local/share/man 0755 root root 1 d none /usr/local/share/man/man8 0755 root root 1 f none /usr/local/share/man/man8/pkcs11-helper-1.8 0644 root root 3618 20303 1315536417 1 i checkinstall 790 2505 1315541889 1 i pkginfo 299 23511 1315541787 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!07070100193ed3000081a40000000000000000000000014e69931b0000012b000000b600010002ffffffffffffffff0000000800000000pkginfoPKG=pkcs11-helper NAME=pkcs11-helper 1.09 i86pc Solaris 11 VERSION=1.09 PSTAMP=9th September 2011 VENDOR=Alon Bar-Lev EMAIL=http://www.opensc-project.org/opensc/wiki/pkcs11-helper DESC=PKCS#11 interaction library ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 07070100193ed2000081a40000000000000000000000014e69931b00000a22000000b600010002ffffffffffffffff0000000700000000pkgmap: 1 1797 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/include 0755 root root 1 d none /usr/local/include/pkcs11-helper-1.0 0755 root root 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11.h 0644 root root 42442 52127 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-certificate.h 0644 root root 16575 28286 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-core.h 0644 root root 14452 49548 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-data.h 0644 root root 6307 53053 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-def.h 0644 root root 3224 57759 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-engines.h 0644 root root 7053 40269 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-openssl.h 0644 root root 5455 57522 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-token.h 0644 root root 6138 38135 1315536417 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-version.h 0644 root root 3111 46639 1315536417 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/libpkcs11-helper.a 0644 root root 375248 41788 1315536417 1 f none /usr/local/lib/libpkcs11-helper.la 0755 root root 1214 41488 1315536417 1 s none /usr/local/lib/libpkcs11-helper.so=libpkcs11-helper.so.1.0.0 1 s none /usr/local/lib/libpkcs11-helper.so.1=libpkcs11-helper.so.1.0.0 1 f none /usr/local/lib/libpkcs11-helper.so.1.0.0 0755 root root 331520 10486 1315536417 1 d none /usr/local/lib/pkgconfig 0755 root root 1 f none /usr/local/lib/pkgconfig/libpkcs11-helper-1.pc 0644 root root 397 36048 1315536417 1 d none /usr/local/share 0755 root root 1 d none /usr/local/share/aclocal 0755 root root 1 f none /usr/local/share/aclocal/pkcs11-helper-1.m4 0644 root root 3425 12705 1315536417 1 d none /usr/local/share/doc 0755 root root 1 d none /usr/local/share/doc/pkcs11-helper 0755 root root 1 f none /usr/local/share/doc/pkcs11-helper/COPYING 0644 root root 4708 63246 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.BSD 0644 root root 1544 56868 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.GPL 0644 root root 17989 29856 1315536418 1 f none /usr/local/share/doc/pkcs11-helper/README 0644 root root 1206 40387 1315536418 1 d none /usr/local/share/doc/pkcs11-helper/api 0755 root root 1 d none /usr/local/share/man 0755 root root 1 d none /usr/local/share/man/man8 0755 root root 1 f none /usr/local/share/man/man8/pkcs11-helper-1.8 0644 root root 3618 20303 1315536417 1 i checkinstall 790 2505 1315541889 1 i pkginfo 299 23511 1315541787 07070100193ef4000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000000800000000install07070100193ef5000081ed0000000000000000000000014e69938100000316000000b600010002ffffffffffffffff0000001500000000install/checkinstall#!/bin/sh # expected_bits="64" expected_release="5.11" expected_platform="i386" # release=`uname -r` platform=`uname -p` bits=`isainfo -b` # if [ ${platform} != ${expected_platform} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_platform} architecture\n" echo "\tAborting installation.\n\n\n" exit 1 fi if [ ${release} != ${expected_release} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_release} machine\n" echo "\tAborting installation.\n\n\n" exit 1 fi #if [ ${bits} != ${expected_bits} ]; then # echo "\n\n\n\tThis package must be installed on a ${expected_bits} bit machine\n" # echo "\tYour machine is running a ${bits} bit O.S. currently\n" # echo "\tAborting installation.\n\n\n" # exit 1 #fi exit 0 07070100193ed4000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000000500000000root07070100193ed5000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000000900000000root/usr07070100193ed6000041ed0000000000000000000000054e69931b00000000000000b600010002ffffffffffffffff0000000f00000000root/usr/local07070100193ee2000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000001300000000root/usr/local/lib07070100193ee4000081ed0000000000000000000000014e697e21000004be000000b600010002ffffffffffffffff0000002700000000root/usr/local/lib/libpkcs11-helper.la# libpkcs11-helper.la - a libtool library file # Generated by libtool (GNU libtool) 2.4 # # Please DO NOT delete this file! # It is necessary for linking the library. # The name that we can dlopen(3). dlname='libpkcs11-helper.so.1' # Names of this library. library_names='libpkcs11-helper.so.1.0.0 libpkcs11-helper.so.1 libpkcs11-helper.so' # The name of the static archive. old_library='libpkcs11-helper.a' # Linker flags that can not go in dependency_libs. inherited_linker_flags='' # Libraries that this one depends upon. dependency_libs=' -R=/lib -L=/lib -lpthread -lcrypto -lnsl -ldl =/usr/local/lib/libgnutls.la =/usr/local/lib/libtasn1.la -lz =/usr/local/lib/libgcrypt.la =/usr/local/lib/libgpg-error.la =/usr/local/lib/libintl.la =/usr/local/lib/libiconv.la -lc -lsocket' # Names of additional weak libraries provided by this library weak_library_names='' # Version information for libpkcs11-helper. current=1 age=0 revision=0 # Is this an already installed library? installed=yes # Should we warn about portability when linking against -modules? shouldnotlink=no # Files to dlopen/dlpreopen dlopen='' dlpreopen='' # Directory that this library needs to be installed in: libdir='/usr/local/lib' 07070100193ee3000081a40000000000000000000000014e697e210005b9d0000000b600010002ffffffffffffffff0000002600000000root/usr/local/lib/libpkcs11-helper.a! / 1315536417 0 0 0 4328 `     ''====            TTTTTTTTTT|||||||||||||||||||||||||||||||aaaaKKKKKKK_pkcs11h_mem_malloc_pkcs11h_mem_free_pkcs11h_mem_strdup_pkcs11h_mem_duplicatepkcs11h_engine_setSystem_g_pkcs11h_sys_enginepkcs11h_engine_setCrypto.XAKk4Dpf4XaOFO9._g_pkcs11h_crypto_engine_openssl.XAKk4Dpf4XaOFO9._g_pkcs11h_crypto_engine_gnutls_g_pkcs11h_crypto_engine_pkcs11h_threading_sleep_pkcs11h_threading_mutexInit.XAKk4Dpg4XaO1S9.__s_pkcs11h_threading_mutex_list_pkcs11h_threading_mutexLock_pkcs11h_threading_mutexRelease_pkcs11h_threading_mutexFree_pkcs1h_threading_mutexLockAll_pkcs1h_threading_mutexReleaseAll_pkcs11h_threading_condSignal_pkcs11h_threading_condInit_pkcs11h_threading_condWait_pkcs11h_threading_condFree_pkcs11h_threading_threadStart_pkcs11h_threading_threadJoin_pkcs11h_util_fixupFixedString_pkcs11h_util_hexToBinary_pkcs11h_util_binaryToHex.XBKk4Dpg4XaOlX9._pkcs11h_util_binaryToHex.x_pkcs11h_util_escapeString.XBKk4Dpg4XaOlX9._pkcs11h_util_escapeString.x_pkcs11h_util_unescapeString_pkcs11h_session_getSlotList_pkcs11h_session_getObjectAttributes_pkcs11h_session_freeObjectAttributes_pkcs11h_session_findObjects_pkcs11h_session_getSessionByTokenId_pkcs11h_session_release_pkcs11h_session_reset_pkcs11h_session_getObjectById_pkcs11h_session_validate_pkcs11h_session_logout__pkcs11h_session_touch_pkcs11h_session_loginpkcs11h_token_freeTokenIdpkcs11h_token_duplicateTokenIdpkcs11h_token_sameTokenId_pkcs11h_token_getTokenId_pkcs11h_token_newTokenIdpkcs11h_token_logoutpkcs11h_token_loginpkcs11h_token_ensureAccesspkcs11h_token_freeTokenIdListpkcs11h_token_enumTokenIds_pkcs11h_certificate_isBetterCertificate_pkcs11h_certificate_newCertificateId.XBKk4Dpg4XaO1l9.__pkcs11h_certificate_updateCertificateIdDescription.unknown.XBKk4Dpg4XaO1l9.__pkcs11h_certificate_updateCertificateIdDescription.separator_pkcs11h_certificate_resetSession_pkcs11h_certificate_validateSessionpkcs11h_certificate_freeCertificateIdpkcs11h_certificate_duplicateCertificateIdpkcs11h_certificate_setCertificateIdCertificateBlobpkcs11h_certificate_freeCertificatepkcs11h_certificate_lockSessionpkcs11h_certificate_releaseSessionpkcs11h_certificate_signpkcs11h_certificate_signRecoverpkcs11h_certificate_decryptpkcs11h_certificate_unwrappkcs11h_certificate_signAnypkcs11h_certificate_decryptAnypkcs11h_certificate_createpkcs11h_certificate_getPromptMaskpkcs11h_certificate_setPromptMaskpkcs11h_certificate_getUserDatapkcs11h_certificate_setUserDatapkcs11h_certificate_getCertificateIdpkcs11h_certificate_getCertificateBlobpkcs11h_certificate_ensureCertificateAccesspkcs11h_certificate_ensureKeyAccess_pkcs11h_certificate_enumSessionCertificatespkcs11h_certificate_freeCertificateIdListpkcs11h_certificate_enumTokenCertificateIdspkcs11h_certificate_enumCertificateIds_pkcs11h_slotevent_init_pkcs11h_slotevent_notify_pkcs11h_slotevent_terminate_force_pkcs11h_slotevent_terminatepkcs11h_getMessagepkcs11h_getVersionpkcs11h_getFeaturespkcs11h_initialize_g_pkcs11h_loglevel_pkcs11h_logpkcs11h_terminate_g_pkcs11h_datapkcs11h_setLogHookpkcs11h_setTokenPromptHookpkcs11h_setPINPromptHookpkcs11h_removeProviderpkcs11h_setLogLevelpkcs11h_setForkModepkcs11h_getLogLevelpkcs11h_setSlotEventHookpkcs11h_setPINCachePeriodpkcs11h_setMaxLoginRetriespkcs11h_setProtectedAuthenticationpkcs11h_addProviderpkcs11h_forkFixuppkcs11h_plugAndPlaypkcs11h_logoutpkcs11h_data_getpkcs11h_data_putpkcs11h_data_delpkcs11h_data_freeDataIdListpkcs11h_data_enumDataObjectspkcs11h_token_serializeTokenIdpkcs11h_token_deserializeTokenIdpkcs11h_certificate_serializeCertificateIdpkcs11h_certificate_deserializeCertificateIdpkcs11h_openssl_freeSessionpkcs11h_openssl_getX509pkcs11h_openssl_createSessionpkcs11h_openssl_getCleanupHookpkcs11h_openssl_setCleanupHookpkcs11h_openssl_session_getRSApkcs11h_openssl_session_getX509// 1315536417 0 0 0 164 ` pkcs11h-crypto.o/ pkcs11h-threading.o/ pkcs11h-session.o/ pkcs11h-token.o/ pkcs11h-certificate.o/ pkcs11h-slotevent.o/ pkcs11h-serialization.o/ pkcs11h-openssl.o/ pkcs11h-mem.o/ 1315536415 0 0 100644 5548 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.symtabpkcs11h-mem.cBbss.bssDdata.dataDrodata.rodata_pkcs11h_mem_malloc__assert_g_pkcs11h_sys_enginememset_pkcs11h_mem_free_pkcs11h_mem_strdupstrlen_pkcs11h_mem_duplicatememmove.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenamesUEEuj@hh E EE ujAhh E EE@E vDjE PЃEEUPEu EUE PjBP EEEÐUEujWhh E EEj@PЃE@EEUjE Pjj@PE PjEPEEÐUEEujuhh E EEt!Eujwhh, E EE@E t E @EtEEPEPEEt/E t E UPUEPEPBP EEEEp!=NULLpkcs11h-mem.cs!=0dest!=NULL!(mem_size!=0&&src==NULL)%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21jpkcs11h-mem.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-mem.o pkcs11h-mem.c -W0,-xp.XAKk4Dpf4XaOlE9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOlE9.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_mem_malloc=Up;5s< rv>unsigned longCK_RVvoid unsignedsize_t(_pkcs11h_mem_freeV@UrpUrw|_pkcs11h_mem_strdupctUdestasrcb char_pkcs11h_mem_duplicatervUdestnp_dest_sizeo srcpmem_sizeqrvs(int __assert    strlen(  memsetA   A memmove  F  /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/isopkcs11h-mem.cpkcs11.hstdio_iso.h= ? s }    * 4 ; Fo        : <D M dkq  DD%.?  : ; @ ' ID I: ;  4I : ;  $> I: &II .? < ' D  I .? < ' ID  .? < ' ID on_pkcs11h_mem_malloc:_pkcs11h_mem_free_pkcs11h_mem_strdup_pkcs11h_mem_duplicate#nCK_RV(size_t     `@4+2I  "J O T  !Me    (] QU'4;GT[gow  4 vVVV"XF+|4?nK Wi e su'Q \[ P k \  { |   pkcs11h-sys.o/ 1315536415 0 0 100644 5332 ` ELF<4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.symtabpkcs11h-sys.c__mytime__mysleep__mygettimeofdayBbss.bssDdata.dataDrodata.rodatatimeusleepgettimeofdaypkcs11h_engine_setSystem__assert_g_pkcs11h_sys_enginememmovemallocfree.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenamesUjjEEÐUjEPÐUjEPEEÐUEujfhh E EjEPh EEengine!=NULLpkcs11h-sys.c%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21pkcs11h-sys.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-sys.o pkcs11h-sys.c -W0,-xp.XAKk4Dpf4XaOVJ9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOVJ9.;backend;raw;cd;DBG_GEN 5.2.7__mytime@Ulongtime_t__mysleepF3UusecFunsigned long__mygettimeofdayQ\U33{tvQintsuseconds_ttimeval{ tv_sec# tv_usec:# Lunsignedvoid            3 { pkcs11h_sys_engine_s_ malloc# free# time# usleep# gettimeofday#pkcs11h_engine_system_t_g_pkcs11h_sys_engine_Vpkcs11h_engine_setSystemeUenginedCK_RV usleep3 gettimeofday3@ {  time] @char] e] o__assert j t 3 memmove   malloc free Z /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso/usr/include/sys../include/pkcs11-helper-1.0pkcs11h-sys.ctime_iso.htime.htypes.hpkcs11h-engines.hpkcs11.h #1 FW f    DD%. : ; @ ' ID $> I: . : ; @ ' D I: ;  . : ; @ ' ID  :  I8 I ' ID  I ' D ' ID 4I?  : ;  .?  : ; @ ' ID &I.? < ' ID .? < ' D .? < ' D E}_g_pkcs11h_sys_enginepkcs11h_engine_setSystem>__mytime__mysleep__mygettimeofdayttime_t:suseconds_tLtimevalpkcs11h_sys_engine_s_pkcs11h_engine_system_tCK_RV @      `V3<RZa *Mq v { $18DLT4 "+|4v?vKl ^W Ee IuX B xf @p 4(z \X  p  $  ,  4/0 1315536415 0 0 100644 25924 ` ELF\a4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.symtabpkcs11h-crypto.c__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitialize__pkcs11h_crypto_openssl_certificate_get_expiration__pkcs11h_crypto_openssl_certificate_get_dn__pkcs11h_crypto_openssl_certificate_is_issuer__pkcs11h_crypto_gnutls_initialize__pkcs11h_crypto_gnutls_uninitialize__pkcs11h_crypto_gnutls_certificate_get_expiration__pkcs11h_crypto_gnutls_certificate_get_dn__pkcs11h_crypto_gnutls_certificate_is_issuerBbss.bssDdata.dataDrodata.rodataOpenSSL_add_all_digests__assertX509_newd2i_X509X509_cmp_current_timememsetmktimelocaltimegmtimeX509_freeX509_get_subject_nameX509_NAME_onelineX509_get_pubkeyX509_get_issuer_nameX509_NAME_cmpX509_verifyEVP_PKEY_freegnutls_global_initgnutls_global_deinittimegnutls_x509_crt_initgnutls_x509_crt_importgnutls_x509_crt_get_activation_timegnutls_x509_crt_get_expiration_timegnutls_x509_crt_deinitgnutls_x509_crt_get_dngnutls_x509_crt_verifypkcs11h_engine_setCrypto.XAKk4Dpf4XaOFO9._g_pkcs11h_crypto_engine_openssl.XAKk4Dpf4XaOFO9._g_pkcs11h_crypto_engine_gnutls_g_pkcs11h_crypto_enginememmove.rel.text.rel.rodata.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenames.rel.debug_varnamesUEEÐUEEÐUH]uEE uhh h E EEuhh h E EE@EEuE EEPEPEP uE@@@EE@@@EEEjEPjEPiE@ Zj$jEP E@@HЍME@@ʍD4EԋE@@HЍME@@ʍDωEЋE@@HЍME@@ʍDЉE̋E@@HЍME@@ʍDЉEȋE@@HЍME@@ ʍDЉEċE@@ HЍME@@ ʍDЉEjEPЋEPujEPjPjEPjP+؋FUÉBEtjEPEE@EE]uÐUEE uhh h E EEuh h h4 E EEwh h h@ E EUBEEuEE EEPEPEP u$jEPЋEPEPR EtjEPEE@EEÐU$]EEEEE uh:h hL E EEuh;h h` E EEEtEEuE EEPEPEP uEEEPEPEP uhjEPEEuJjEPjEPPSuEPEPuEEtjEPEEtjEPEEtjEPEEEE]ÐUt EEEÐUEEÐU$EjjEE uhh h E EEuhh h E EE@jEPt EfE EEEjEPEP t>jEPEjEPEE;E|E;E EUPEtjEPEE@EEÐU EE uhh h E EEuhh h4 E EEwhh h@ E EUBjEPt ETE EEEjEPEP t-EEEPEPEP t UBEtjEPEE@EEÐU$EEEEE uh7h hL E EEuh8h h` E EjEPtEjEPt EE EEEjEPEP t\EEEEjEPEP t4jEPjjEPEPtEuEEtjEPEEtjEPEEEEÐU EEEu EkE u EWEu E_Eu E/Eu EEu E#EEjEPh EEEEblob!=NULLpkcs11h-crypto.cexpiration!=NULLdn!=NULLdn_max>0issuer_blob!=NULLcert_blob!=NULL%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21m,pkcs11h-crypto.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-crypto.o pkcs11h-crypto.c -W0,-xp.XAKk4Dpf4XaOFO9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOFO9.;backend;raw;cd;DBG_GEN 5.2.7__pkcs11h_crypto_openssl_initializeUglobal_dataintvoid__pkcs11h_crypto_openssl_uninitialize2UUUglobal_data__pkcs11h_crypto_openssl_certificate_get_expirationU~~global_datablob blob_sizeexpirationx509}d2inotBefore9 notAfter9 sstm1unsigned charunsigned size_tlong asn1_string_st& length# type# data# flags# ASN1_INTEGER&char>F asn1_object_st snK# lnK# nid# length# data# flags# PASN1_OBJECT> ASN1_BOOLEAN ASN1_STRING ASN1_ENUMERATED ASN1_BIT_STRING ASN1_OCTET_STRING/ ASN1_PRINTABLESTRINGL ASN1_T61STRINGl ASN1_IA5STRING ASN1_GENERALSTRING ASN1_BMPSTRING ASN1_UNIVERSALSTRING ASN1_UTCTIME ASN1_GENERALIZEDTIME ASN1_VISIBLESTRING0 ASN1_UTF8STRINGN ASN1_VALUE_st iASN1_VALUEy  ptr# boolean# asn1_string# object# integer9# enumerated# bit_string*# octet_stringG# printablestringg# t61string# ia5string# generalstring# bmpstring# universalstring# utctime # generalizedtime+# visiblestringI# utf8stringd# set# sequence# asn1_value# asn1_type_stN type# value# ASN1_TYPEN X509_algor_st algorithm# parameter^# cX509_ALGOR>> stack_stS num# data# sorted# num_alloc# comp# STACKS buf_mem_st  length# data# max# d BUF_MEM unsigned long X509_name_st entries_ # modified# bytes # hash # X509_NAME ASN1_TIME) X509_val_stu notBefore9 # notAfter9 # > X509_VALu >             /    4 c 9  >  bignum_st dh # top# dmax# neg# flags#m m  bignum_ctx       m  m  m  m BIGNUM bn_mont_ctx_stH ri# RR # N # Ni #, n0 #@ flags#D-                 rsa_stX C pad# version# meth# engine# n# e# d# p# q# dmp1#$ dmq1#( iqmp#, ex_data#0 references#8 flags#< _method_mod_n"#@ _method_mod_p"#D _method_mod_q"#H bignum_data#L blindingJ#P mt_blindingJ#T Cw  HM| "  " cb_1# cb_2# bn_gencb_st Y ver# arg# cb#y  Y rsa_meth_st8  name # rsa_pub_enc # rsa_pub_dec # rsa_priv_enc/ # rsa_priv_decc # rsa_mod_exp # bn_mod_exp # init # finish # flags#$ app_data#( rsa_signw#, rsa_verify#0 rsa_keygeny#4 ~RSA_METHOD engine_st ENGINE crypto_ex_data_st  sk_ # dummy# CRYPTO_EX_DATA - BN_MONT_CTX bn_blinding_st 'BN_BLINDING8>OY DSA_SIG_st  r# s#h^c c cFc         m Km Uc  PZ  _ccch  c dsa_method0  nameT# dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_expF# bn_mod_exp# init# finish# flags# app_data#$ dsa_paramgen#( dsa_keygen #, DSA_METHOD  dsa_stD  pad# version# write_params# p# q# g# pub_key# priv_key# kinv# r#$ flags#( method_mont_p"#, references#0 ex_data#4 meth#< engine#@> \-m 2W7< dh_stL n pad# version# p# g# length# pub_key# priv_key# flags# method_mont_p"# q#$ j#( seed#, seedlen#0 counter#4 references#8 ex_data#< meth#D engine#H\nm xm m s }   dh_method$  name# generate_key-# compute_keyW# bn_mod_exp# init# finish# flags# app_data# generate_params# DH_METHOD ec_key_st 6 ptr# rsa # dsac# dh# ec# evp_pkey_st type# save_type# references# pkey# save_parameters# attributes_ # 6EVP_PKEY X509_pubkey_st   algor# public_key*# pkey# X509_PUBKEY  ASN1_ENCODING_st f enc# len# modified# $ASN1_ENCODING x509_cinf_st4F version9# serialNumber9# signature# issuer$ # validity # subject$ # key# issuerUID*# subjectUID*# extensions_ #$ encf#( zX509_CINFF AUTHORITY_KEYID_st[ X509_POLICY_CACHE_st uX509_POLICY_CACHE x509_cert_aux_st trust_ # reject_ # aliasd# keyidG# other_ # X509_CERT_AUX x509_st\r cert_infoV# sig_alg# signature*# valid# references# name# ex_data# ex_pathlen# ex_pcpathlen#$ ex_flags #( ex_kusage #, ex_xkusage #0 ex_nscert #4 skidG#8 akidp#< policy_cache#@ sha1_hash#D aux.#X 3X509r__pkcs11_openssl_d2i_t tm$A tm_sec# tm_min# tm_hour# tm_mday# tm_mon# tm_year# tm_wday# tm_yday# tm_isdst# __pkcs11h_crypto_openssl_certificate_get_dnRUglobal_datablob blob_size!dn&dn_maxx509}d2i __pkcs11h_crypto_openssl_certificate_is_issuer0&Ullglobal_data+{issuer_blob, issuer_blob_size-cert_blob.cert_blob_size/x509_issuer}1x509_cert}2pub_issuer3d2i4is_issuer5qv PKCS11H_BOOL  * / m % 4 9 > C H w |    r      pkcs11h_crypto_engine_s! global_data# initialize# uninitialize# certificate_get_expiration # certificate_get_dnm # certificate_is_issuer # pkcs11h_engine_crypto_t!_g_pkcs11h_crypto_engine_openssl!|__pkcs11h_crypto_gnutls_initialize]U("("global_data__pkcs11h_crypto_gnutls_uninitializewU""global_data__pkcs11h_crypto_gnutls_certificate_get_expirationU##global_data#blob #blob_size#expirationcert#datum $now!$notBefore!$notAfter!$## gnutls_x509_crt_int# #gnutls_x509_crt_t $ data# size# #gnutls_datum_t time_t__pkcs11h_crypto_gnutls_certificate_get_dn+ U % %global_data%blob  %blob_size%%dn*%dn_maxcert#datum $s%%__pkcs11h_crypto_gnutls_certificate_is_issuer- Um&m&global_data(|&issuer_blob) &issuer_blob_size*&cert_blob+&cert_blob_size,cert_issuer#.cert_cert#/datum $0is_issuer1result2r&w&&&!_g_pkcs11h_crypto_engine_gnutls&{_g_pkcs11h_crypto_engine![pkcs11h_engine_setCryptog Uh'h'~'enginef_engine'hrvh'i CK_RV t'y'!'#'gnutls_x509_crt_verify'#' #gnutls_x509_crt_get_expiration_time!$('gnutls_x509_crt_get_activation_time!$H('gnutls_x509_crt_get_dn|(# #|((GNUTLS_X509_FMT_DERGNUTLS_X509_FMT_PEMgnutls_x509_crt_import(#((gnutls_x509_crt_deinit)##gnutls_x509_crt_initA))gnutls_global_deinitgnutls_global_init w) )X509_NAME_cmp)|))3X509_get_pubkey))3X509_get_subject_name$ *)X509_get_issuer_name$ /*) X509_NAME_onelinec*/*}h*m*d2i_X509}*c*r*3X509_free**X509_new}X509_cmp_current_time**6X509_verify$+**EVP_PKEY_freeA+*OpenSSL_add_all_digests!$time!${+^+mktime!$+{++localtime++++gmtime+++>+>+__assert ,++memsetD,D, memmoveI,vr /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso/usr/local/include/openssl../include/pkcs11-helper-1.0/usr/local/include/gnutlspkcs11h-crypto.cstdio_iso.hx509.hasn1.hossl_typ.hstack.hbuffer.hevp.hrsa.hbn.hcrypto.hdsa.hdh.htime_iso.hpkcs11h-def.hpkcs11h-engines.hgnutls.hpkcs11.h   && - LSS       s    # K s     S       % 3 :M ip w ~    3 8>W \u x           66@ LX ffk r     $ + 06 < S Xi z     G {            & 6 = D K R R            $ * 0 G L  v }                    ( 4 < H P W \ b u |   DD%. : ; @ ' ID I: ;  $> I&I4I : ;    I:  :  I8 <  : ' ID I' D I !I/ I. : ;@ ' ID I: ; 4I : ;  : 4I?  : ; .?  : ;@ ' ID .? < ' ID  : ( .? < ' D .? < ' D .? < ' ID .? < ' ID Hq,&_g_pkcs11h_crypto_engine&pkcs11h_engine_setCryptoq,__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitializeZ__pkcs11h_crypto_openssl_certificate_get_expirationA__pkcs11h_crypto_openssl_certificate_get_dn+__pkcs11h_crypto_openssl_certificate_is_issuer!__pkcs11h_crypto_gnutls_initialize-"__pkcs11h_crypto_gnutls_uninitialize"__pkcs11h_crypto_gnutls_certificate_get_expiration.$__pkcs11h_crypto_gnutls_certificate_get_dn/%__pkcs11h_crypto_gnutls_certificate_is_issuerq,size_tasn1_string_st&ASN1_INTEGERPasn1_object_stASN1_OBJECTASN1_BOOLEANASN1_STRINGASN1_ENUMERATEDASN1_BIT_STRING/ASN1_OCTET_STRINGLASN1_PRINTABLESTRINGlASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRINGASN1_UTCTIMEASN1_GENERALIZEDTIME0ASN1_VISIBLESTRINGNASN1_UTF8STRINGyASN1_VALUEasn1_type_stNASN1_TYPEcX509_algor_stX509_ALGORstack_stS STACKd buf_mem_st BUF_MEM X509_name_st X509_NAME) ASN1_TIME> X509_val_stu X509_VALm bignum_st BIGNUM- bn_mont_ctx_st"bn_gencb_st~rsa_meth_stRSA_METHODENGINEcrypto_ex_data_stCRYPTO_EX_DATABN_MONT_CTX8BN_BLINDING rsa_sthDSA_SIG_stdsa_methodDSA_METHODdsa_stdh_methodDH_METHOD\dh_st6evp_pkey_stEVP_PKEYX509_pubkey_st X509_PUBKEY$ASN1_ENCODING_stfASN1_ENCODINGzx509_cinf_stFX509_CINFX509_POLICY_CACHEx509_cert_aux_stX509_CERT_AUX3x509_strX509__pkcs11_openssl_d2i_ttmPKCS11H_BOOL pkcs11h_crypto_engine_s!pkcs11h_engine_crypto_t#gnutls_x509_crt_t# $gnutls_datum_t!$time_th'CK_RV(Wq,!_g_pkcs11h_crypto_engine_openssl&_g_pkcs11h_crypto_engine_gnutls  @?Bk`0-`G[@0 noxy     &8H]kw&=Tk afk =!T!|"z#$#%#&+05afk '(,&' K c)'*+,-& &7.g/01G2_3p45!&+UZ_126 5` e j     1 1 2; 2_ 7 5 5 9 :* 9> :i ;n <   $ ( , *.MQVZ_crv_c!9!"W" ["" "^$ b$b% f%&:&;'8'(08BJT^fnv~(08BLT\fsz &08@HPX`hpz  $,4<DLV^fnx  $,4<FPX`jrz "*4<FNX`jrz8 &.8BJT^fp4  WXp0"p+|4?q,K@zWwIeFKLuKyMR[R V YP Z . [( > pthread_cond_timedwait-|49Cpthread_cond_wait-49pthread_cond_signal-4 _pthread_condattr__pthread_condattrp # pthread_cond_init-74pthread_mutex_trylock-`9pthread_mutex_unlock-9pthread_mutex_lock-9pthread_mutex_destroy-9 _pthread_mutexattr__pthread_mutexattrp # pthread_mutex_init-D9 pthread_join-nD _pthread_attr__pthread_attrp #n   pthread_create-    _pkcs11h_mem_free& & +0_pkcs11h_mem_mallock5: k  pthread_sigmask--pusigemptyset-usigaddset-u- /var/tmp/pkcs11-helper-1.09/lib/usr/include/sys../include/pkcs11-helper-1.0pkcs11h-threading.ctypes.hint_types.h_pkcs11h-threading.hpkcs11h-def.hpkcs11.htime.htime_impl.hselect.h( 6=D K e h o            &-@ DK Q fm            ~  ( 8D R`h w ~        ~   !7 DK{T~d l t |  }~   _'   &- 4 H L S[ ct ~~~        &- l s x        5 Q X \c i         - 3 FM Tm py         DD%$> I:  :  I8 I !I/  :   :  I   I  4I : ;  .?  : ; @ ' D I: ;  &I.?  : ; @ ' ID  .?  : ;@ ' D 4I : ; .?  : ;@ ' ID I: ; . : ;@ ' ID ' ID I.? < ' ID .? < ' ID _pkcs11h_threading_sleepX_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexLockl_pkcs11h_threading_mutexRelease_pkcs11h_threading_mutexFreeh_pkcs1h_threading_mutexLockAll%_pkcs1h_threading_mutexReleaseAll_pkcs11h_threading_condSignal _pkcs11h_threading_condInit_ _pkcs11h_threading_condWait _pkcs11h_threading_condFree? _pkcs11h_threading_threadStart _pkcs11h_threading_threadJoin* ___pkcs11h_thread_startuint16_tuint8_tuint32_t(upad64_t7_pthread_mutex _pkcs11h_mutex_t4PKCS11H_BOOLG__pkcs11h_threading_mutex_entry_s__pkcs11h_threading_mutex_entry_tCK_RV[ _pthread_cond pthread_cond_t pthread_mutex_t  time_t+ suseconds_t= timevall timespec _pkcs11h_thread_start_t ___pkcs11h_thread_data_t 0 sigset_t_pthread_condattr_pthread_mutexattrn_pthread_attr3__s_pkcs11h_threading_mutex_list     *10N 6`> ;Qp j j$6M#iu@~-NSv4t/KYkp +!m7<Tm$7J&`(E)+,-&[/1 26z~04  M"Q#" %&  '        *   d .h 0  )3;CKS]eow #07CMU]go|#+3=J Q]emu}!+3;EOYais}"!)6#=IS[cmu%' '/7?GQYf*my. )1;CKU]j0q}    4d    " +6B!N=)\*l,.},.7/  (2 3x p5  8; & @; ; H; P P; pkcs11h-util.o/ 1315536416 0 0 100644 10516 ` ELF|%4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.debug_varnames.symtabpkcs11h-util.cBbss.bssDdata.dataDrodata.rodata_pkcs11h_util_fixupFixedString__assertmemmove_pkcs11h_util_hexToBinary__ctypesscanf_pkcs11h_util_binaryToHex.XBKk4Dpg4XaOlX9._pkcs11h_util_binaryToHex.x_pkcs11h_util_escapeStringstrchr.XBKk4Dpg4XaOlX9._pkcs11h_util_escapeString.x_pkcs11h_util_unescapeString.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenames.rel.debug_varnamesU E uj?hh E EEuj@hh E EEEEEPE PEP UBEHEE;Er2E@ u&UBEHEE;Er E@ tÐU(]EEEEE ujWhh E EEujXhh E EEujYhh0 E EE@EE EE@E@E@;EE@%tx]E‹CDEƒuEEPhDEP tEE%ЋEMHQE@U@BE@EE@EE@tE@;EKE@t EEE]U]Euhhh E EEuhhh E EEU E;s E|EE;EsUEE@%]MYEE@]MDYE@EE;ErMUJEE]ÐUEE EEEEE uhhh E EEuhhhH E EE@E@\t3E@PEPuE@EtrEU;Bv E\UBUxBE@%MAE@MAEEEEEt,EU@;Bv E|E@UBE@EE@EE@EE@-Et(EU@;Bv E*UBE@EE@EEUPEEEE\\source!=NULLpkcs11h-util.ctarget!=NULLp_target_size!=NULL%xmax!=NULL%08x0123456789ABCDEF%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21pkcs11h-util.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-util.o pkcs11h-util.c -W0,-xp.XAKk4Dpg4XaOlX9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOlX9.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_util_fixupFixedString<Utarget9#source: Alength;p=charunsigned(size_t4 _pkcs11h_util_hexToBinaryQUytargetNsourceO p_target_sizePtarget_max_size4RpSbufTiU  y y r r r k &k &kv(d Cunsigned longyCK_RVunsigned char(long  int _pkcs11h_util_binaryToHexUtarget{target_size| source}source_size~xi444 _pkcs11h_util_escapeStringUtargetsource maxinvalid_charsxrvstn4 _pkcs11h_util_unescapeStringUtarget"source 'maxrvs1tn4 {^ N N G        b6u(, G GQ__assert}LV}strchrvoidmemmove(sscanf /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso../include/pkcs11-helper-1.0pkcs11h-util.cstdio_iso.hpkcs11.h>7 k t      ~  ? s        & @ G ^ kr yq   3 D P_  ~     7 k {        + 4@H T [ `m t{`#           G {               ' ,9 @GN^^%f r y |     DD%.?  : ; @ ' D I: ;  4I : ;  $> I&II: .?  : ; @ ' ID   D D I  !I/ .? < ' D I.? < ' ID .? < ' ID _pkcs11h_util_fixupFixedStringF_pkcs11h_util_hexToBinary_pkcs11h_util_binaryToHex_pkcs11h_util_escapeString_pkcs11h_util_unescapeString#4size_tCK_RVux;x      '/6P}  B G L  #J O T~  + 4     s  E J O # (U Z _    ei #',059>BGKPTGy} &.6>FNV^fnv~",4AHT\dlv~ *4>FNV`hrz (08BLT\dnv   4[ @ @ H "L p+ |48 ?8 KLWBeDu'<     l!  d% 2 l% G t%/39 1315536416 0 0 100644 38932 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.symtabpkcs11h-session.cBbss.bssDdata.dataDrodata.rodata_pkcs11h_session_getSlotList__assert_g_pkcs11h_loglevel_pkcs11h_log_pkcs11h_mem_malloc_pkcs11h_mem_freepkcs11h_getMessage_pkcs11h_session_getObjectAttributes_pkcs11h_session_freeObjectAttributes_pkcs11h_session_findObjectsmemmove_pkcs11h_session_getSessionByTokenId_g_pkcs11h_data_pkcs11h_threading_mutexLockpkcs11h_token_sameTokenIdpkcs11h_token_duplicateTokenId_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexFree_pkcs11h_threading_mutexRelease_pkcs11h_session_release_pkcs11h_session_reset_pkcs11h_token_getTokenIdpkcs11h_token_freeTokenId_pkcs11h_session_getObjectById_pkcs11h_session_validate_g_pkcs11h_sys_engine_pkcs11h_session_logout__pkcs11h_session_touch_pkcs11h_session_loginstrlenmemset.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenamesU EEEEujHhh E EEujIhh$ E EEujJhh4 E Er9E t EEEPEPEPEPhDjE@E@E@uEE0U EPjRAЃ EEtEv$EPEPEEtTEv,E0U EPEPRAЃ EEt!EUPEEUPEEtjEPr-jEPЋEj@PREPhjEEEÐU]EEuhhh E EEuhhh E ErEPEPE PEPhjE@ 0UjjEPEPE PBPAdЃEEtEE;EUMȋAuEUMȋAuUMAGU]؋UMȋAPCPEEtLE@EE;EHE@ 0UjjEPEPE PBPAdЃEEtr&jEPjjPEPhpjEEE]ÐU Euhhh E ErjjE PEPhjEE;E sbUMȋAt9UMjAPUMAE@EE;E rrhjEEÐUEEEDžXDžTEuhhh DžP DžPE u*Et"E uhhh4 DžL DžLEuhhhh DžH DžHEuhhhx DžD DžDr#EPEPEPE PEPhjE@E@E@ 0UEPE PBPAlЃ TTtEE@ 0Ujj\Pjd`PBPApЃTTd\UDž@X;`urhj`XE\P@PTTt3EtEPEP@P M@\P`PP EtjEPE@EE\EDž@E@ 0Ujj\Pjd`PBPApЃTTu\Et$E@ 0Ej@PBtЃEEUPEUPEEDžTEtjEPEEr3jTPЋEj@PRTPhXjTEEU EEEEEuhhh E EE uhhh E ErjjE PEPhjE @jPPEEtlE@ EEteEu]UEPBPt,rhjEEE@U@BE@EEtEtErh8jjDEPEEtE@E@U@BUEPBPEEtcEj,PEEtCEE@U@ BUP E UPEEEt'EtEj,PjEPEtjPPEr-jEPЋE j@PREPhXjEEEÐUEEEuhhh E EE@}hhh E ErEPhj Ej,PEEt(EE@~ E@UHBEEtEj,PEr&jEPjjPEPhjEEEÐU0,(EEEEuhKhh E EEuhMhh0 E ErEPEPE PEPh@jE@rBEXEHEPE@CP2P!PPhjE~E@EEgE[EE@ tE@ ;EtjjEPEPREPEEt@r.]jEPjPEPPh jEE;E~ErEE䋘0M؋U4PPCЃEEuEP4PEEtr6]ԋMԋUԋECP2P!PPhHjUEPBPtAEU؋EMAE@ u EUP E%ҋEPEEt@r6}u؋]jEPPEPPPhjEԃtjEPE@E؋E;Es EEtjEPEE@EEt EEuEuEErE@Phj EE܋E@EE܉E؋ UjjEPBPE PAPC(Ѓu EEEԉEr+Et EEEPh0j Et EEEr-jEPЋEj@PREPhTjEEE0,(ÐU0EEE EEEE EEEEEEEEEuhhh E EEuh hh E Er#EPEPEPE PEPhjE@jEPE؋E؃tVjEPEPjEPEPE؋E؃t*E܃u EEU@BEEtjEPr-jEPЋEj@PREPhjE؉EEÐU ]ErEPhdj EuEE@ tE@ @t E@u Er"]jjPC PhjE@ tA]ЋS ;}0rhjjEPEEr&jEPjjPEPh jEEE]ÐUEuhhh E EE@uE@ ЋЋE@M‰A EEÐU$EEEuhhh E ErUE t E EEt EEEPEPEPEPEPhD jjEPEEuwjjEPEPEPEPEEuPEt EEE@ 0UEjPjjREPA4ЃEEtxE tE@ <SEEEu Erh jEU;P4EE@0t E@ 8tE@rE@Ph j  UhPEPBPEPAPC,Ѓt EErEPh j EtEjPEjEPEEtE@ 0UjjEPEPjBPALЃEEt E=tEEr&jEPjjPEPhH jhjP Et E=tE=t E=t;E@EEuU;P4Eu E Er&jEPjjPEPh| jEEEUrEPh j EtZE@tOE@ t:E@ 0Ej@PBPЃE@ 0Ej@PB8ЃE@rh jEEprovider!=NULLpkcs11h-session.cpSlotList!=NULLpulCount!=NULLPKCS#11: _pkcs11h_session_getSlotList entry provider=%p, token_present=%d, pSlotList=%p, pulCount=%pPKCS#11: _pkcs11h_session_getSlotList return rv=%lu-'%s' *pulCount=%ldsession!=NULLattrs!=NULLPKCS#11: _pkcs11h_session_getObjectAttributes entry session=%p, object=%ld, attrs=%p, count=%uPKCS#11: _pkcs11h_session_getObjectAttributes return rv=%lu-'%s'PKCS#11: _pkcs11h_session_freeObjectAttributes entry attrs=%p, count=%uPKCS#11: _pkcs11h_session_freeObjectAttributes return!(filter==NULL && filter_attrs!=0) || filter!=NULLp_objects!=NULLp_objects_found!=NULLPKCS#11: _pkcs11h_session_findObjects entry session=%p, filter=%p, filter_attrs=%ld, p_objects=%p, p_objects_found=%pPKCS#11: Bad PKCS#11 C_FindObjects implementation detected, workaround appliedPKCS#11: _pkcs11h_session_findObjects return rv=%lu-'%s', *p_objects_found=%ldtoken_id!=NULLp_session!=NULLPKCS#11: _pkcs11h_session_getSessionByTokenId entry token_id=%p, p_session=%pPKCS#11: Using cached sessionPKCS#11: Creating a new sessionPKCS#11: _pkcs11h_session_getSessionByTokenId return rv=%lu-'%s', *p_session=%psession->reference_count>=0PKCS#11: _pkcs11h_session_release entry session=%pPKCS#11: _pkcs11h_session_release return rv=%lu-'%s'p_slot!=NULLPKCS#11: _pkcs11h_session_reset entry session=%p, user_data=%p, mask_prompt=%08x, p_slot=%pPKCS#11: _pkcs11h_session_reset Expected token manufacturerID='%s' model='%s', serialNumber='%s', label='%s'PKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: _pkcs11h_session_reset Found token manufacturerID='%s' model='%s', serialNumber='%s', label='%s'PKCS#11: Cannot get token information for provider '%s' slot %ld rv=%lu-'%s'PKCS#11: Calling token_prompt hook for '%s'PKCS#11: token_prompt returned %dPKCS#11: _pkcs11h_session_reset return rv=%lu-'%s', *p_slot=%ldid!=NULLp_handle!=NULLPKCS#11: _pkcs11h_session_getObjectById entry session=%p, class=%ld, id=%p, id_size=%08x, p_handle=%pPKCS#11: _pkcs11h_session_getObjectById return rv=%lu-'%s', *p_handle=%08lxPKCS#11: _pkcs11h_session_validate entry session=%pPKCS#11: _pkcs11h_session_validate session->pin_expire_time=%u, time=%uPKCS#11: Forcing logout due to pin timeoutPKCS#11: _pkcs11h_session_validate return rv=%lu-'%s'PKCS#11: _pkcs11h_session_login entry session=%p, is_publicOnly=%d, readonly=%d, user_data=%p, mask_prompt=%08xPKCS#11: Calling pin_prompt hook denied because of prompt maskPKCS#11: Calling pin_prompt hook for '%s'PKCS#11: pin_prompt hook return rv=%ldPKCS#11: _pkcs11h_session_login C_Login rv=%lu-'%s'PKCS#11: _pkcs11h_session_login return rv=%lu-'%s'PKCS#11: _pkcs11h_session_logout entry session=%pPKCS#11: _pkcs11h_session_logout return%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/214pkcs11h-session.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-session.o pkcs11h-session.c -W0,-xp.XAKk4Dpg4XaOVc9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOVc9.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_session_getSlotListC,Uq`provider? token_present@  pSlotListA pulCountB_slots" D_slotnum7 ErvqFunsigned long`CK_RV_pkcs11h_provider_tintPKCS11H_BOOLcharlong !  void unsigned char _CK_VERSION3 major# minor#`D 3DCK_C_Initialize`p _pCK_C_Finalize   `CK_FLAGS    _CK_INFOL: cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H `P: ?PCK_C_GetInfo  h`m rCK_C_GetFunctionList `` CK_C_GetSlotList @ ?    _CK_SLOT_INFOh slotDescription# manufacturerID#@ flags#` hardwareVersion#d firmwareVersion#f `` CK_C_GetSlotInfo             _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber#P flags#` ulMaxSessionCount`#d ulSessionCount`#h ulMaxRwSessionCount`#l ulRwSessionCount`#p ulMaxPinLen`#t ulMinPinLen`#x ulTotalPublicMemory`#| ulFreePublicMemory`# ulTotalPrivateMemory`# ulFreePrivateMemory`# hardwareVersion# firmwareVersion# utcTime# `` CK_C_GetTokenInfo`` CK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySize`# ulMaxKeySize`# flags# 5``` CK_C_GetMechanismInfo ``` CK_C_InitToken`# ``  # CK_C_InitPIN`` ``` ; ` CK_C_SetPIN` `` w ` ``   CK_C_OpenSession` `  CK_C_CloseSession` `   CK_C_CloseAllSessions`CK_SLOT_ID`CK_STATE _CK_SESSION_INFO slotID8 # stateI # flags# ulDeviceError`# X ` `  CK_C_GetSessionInfo` `  CK_C_GetOperationState`N ```` ) N CK_C_SetOperationState` ``` p  CK_C_Login` `  CK_C_Logout`CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE + type # pValue# ulValueLen`# `P `+ ` 0 P CK_C_CreateObject` ``+ ` m  CK_C_CopyObject` ``  CK_C_DestroyObject` ``  CK_C_GetObjectSize`: ``+ `  : CK_C_GetAttributeValue`| ``+ ` \ | CK_C_SetAttributeValue` `+ `  CK_C_FindObjectsInit` ``  CK_C_FindObjects`&` &CK_C_FindObjectsFinal`CK_MECHANISM_TYPE _CK_MECHANISM  mechanismG# pParameter# ulParameterLen`# _``` CK_C_EncryptInit``` CK_C_Encrypt`O`` *OCK_C_EncryptUpdate`` mCK_C_EncryptFinal``` CK_C_DecryptInit``` CK_C_Decrypt`>`` >CK_C_DecryptUpdate`w` \wCK_C_DecryptFinal`` CK_C_DigestInit``` CK_C_Digest``` CK_C_DigestUpdate`O`` 9OCK_C_DigestKey`` iCK_C_DigestFinal``` CK_C_SignInit``` CK_C_Sign`)`` )CK_C_SignUpdate`_` D_CK_C_SignFinal``` yCK_C_SignRecoverInit``` CK_C_SignRecover``` CK_C_VerifyInit`P``` +PCK_C_Verify``` gCK_C_VerifyUpdate``` CK_C_VerifyFinal``` CK_C_VerifyRecoverInit`8`` 8CK_C_VerifyRecover`{`` V{CK_C_DigestEncryptUpdate``` CK_C_DecryptDigestUpdate` ``  CK_C_SignEncryptUpdate`T`` /TCK_C_DecryptVerifyUpdate``+ ` xCK_C_GenerateKey``+ `+ ` CK_C_GenerateKeyPair`7``` 7CK_C_WrapKey````+ ` OCK_C_UnwrapKey```+ ` CK_C_DeriveKey``` CK_C_SeedRandom`2`` 2CK_C_GenerateRandom`b` QbCK_C_GetFunctionStatus`` CK_C_CancelFunction`` CK_C_WaitForSlotEvent_CK_FUNCTION_LISTR version# C_InitializeI# C_Finalizeu# C_GetInfoU# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismList# C_GetMechanismInfo#$ C_InitToken#( C_InitPIN( #, C_SetPINe #0 C_OpenSession #4 C_CloseSession #8 C_CloseAllSessions #< C_GetSessionInfo #@ C_GetOperationState #D C_SetOperationStateS #H C_Login #L C_Logout #P C_CreateObjectU #T C_CopyObject #X C_DestroyObject #\ C_GetObjectSize #` C_GetAttributeValue? #d C_SetAttributeValue #h C_FindObjectsInit #l C_FindObjects #p C_FindObjectsFinal+#t C_EncryptInit#x C_Encrypt#| C_EncryptUpdateT# C_EncryptFinal# C_DecryptInit# C_Decrypt# C_DecryptUpdateC# C_DecryptFinal|# C_DigestInit# C_Digest# C_DigestUpdate!# C_DigestKeyT# C_DigestFinal# C_SignInit# C_Sign# C_SignUpdate.# C_SignFinald# C_SignRecoverInit# C_SignRecover# C_VerifyInit# C_VerifyU# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInit# C_VerifyRecover=# C_DigestEncryptUpdate# C_DecryptDigestUpdate# C_SignEncryptUpdate# C_DecryptVerifyUpdateY# C_GenerateKey# C_GenerateKeyPair# C_WrapKey<# C_UnwrapKey# C_DeriveKey# C_SeedRandom# C_GenerateRandom7# C_GetFunctionStatusg# C_CancelFunction# C_WaitForSlotEvent#hCK_FUNCTION_LIST_PTRunsignedm_pkcs11h_thread_t_pkcs11h_provider_sT next}# enabled# reference# manufacturerID# handle# fR# should_finalize# allow_protected_auth# cert_is_private# mask_private_modem# mask_decrypt_modem# slot_event_methodm# slot_poll_intervalm# slotevent_thready# }CK_BBOOL  CK_ULONG_PTRCK_SLOT_ID_PTR`CK_ULONG_pkcs11h_session_getObjectAttributesOUq 'session'object :'attrs?'countrvqim&_pkcs11h_session_t! !(!  9!  J!  ![!  pkcs11h_token_id_sd! display!# manufacturerID!# model(!# serialNumber9!# labelJ!# [!!pkcs11h_token_id_t`CK_SESSION_HANDLEtime_t#pkcs11h_certificate_id_list_tM"CK_BYTE_PTRmsize_t pkcs11h_certificate_id_s# token_id!# displayName:"# attrCKA_IDM"# attrCKA_ID_size_"# certificate_blob# certificate_blob_size_"# l"#pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s# next"# certificate_id## =#unsigned short#uint16_t uint8_t  Z$ __pthread_mutex_flag1## __pthread_mutex_flag2## __pthread_mutex_ceiling## __pthread_mutex_type## __pthread_mutex_magic## #k$  $ __pthread_mutex_padZ$#muint32_t  $ __pthread_ownerpid$# __pthread_lockword$#unsigned long long$upad64_t  g% __pthread_mutex_lock64k$# __pthread_mutex_lock32$# __pthread_mutex_owner64$# _pthread_mutex % __pthread_mutex_flags## __pthread_mutex_lock%# __pthread_mutex_data$#g%_pkcs11h_mutex_t _pkcs11h_session_sD& next # reference_count# valid# provider}# token_id!# session_handle!# allow_protected_auth_supported# pin_cache_period# pin_expire_time "# cached_certs"#$ touch#( mutex%#, % `CK_OBJECT_HANDLE'+ CK_ATTRIBUTE_PTR#'m_pkcs11h_session_freeObjectAttributesFUq''attrs'count im#'m_pkcs11h_session_findObjects` UqZ)Z)sessioni)filter n)filter_attrss)p_objectsx)p_objects_foundshould_FindObjectsFinal objects}) objects_size7  objects_buffer)objects_found7 oLast'rvqFLFLtemp})9  _)d)7  7 '') c_pkcs11h_session_getSessionByTokenId< Uq**token_id*p_session mutex_lockedhave_session_mutexsession current_session rvq! &*_pkcs11h_session_release  Uq++session mutex_lockedrvq _pkcs11h_session_resetDUq,,session@-user_dataA  -mask_promptB-p_slotCfoundErvqGnRetrymI4((current_provider}d;slots" nslotnum7 oslot_index8 pptoken_id!info-\(h(h(canceled mCK_TOKEN_INFO_pkcs11h_session_getObjectByIdWUq#.#.session >.class  C.idH.id_sizeM.p_handlefiltere.objects})objects_found7 rvqC `CK_OBJECT_CLASS(.M"_"}) CK_ATTRIBUTE R.v. _pkcs11h_session_validateZUq..sessionYrvq[ __pkcs11h_session_touchUq//session _pkcs11h_session_login Uq00session0is_publicOnly 0readonly0user_data0mask_promptslot8 rvqhlogin_succeededretry_countmutfPIN0lPINLength7 pin0 mCK_UTF8CHAR_PTR0_pkcs11h_session_logoutcUq-1-1sessionb  !71_pkcs11h_token_getTokenIdqs121<1m x1}1_pkcs11h_log1s11 g%1_pkcs11h_threading_mutexFreeq111_pkcs11h_threading_mutexReleaseq211_pkcs11h_threading_mutexLockqP221_pkcs11h_threading_mutexInitq2P2 2 22_pkcs11h_mem_freeq22 2 22m_pkcs11h_mem_mallocq322!!pkcs11h_token_sameTokenId?33371!pkcs11h_token_duplicateTokenIdq3?3D3 [!pkcs11h_token_freeTokenIdq33` 3pkcs11h_getMessage333 3 3__assert433 4strlen_"A4"4memsete4m e4memmovej4m. /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-session.cpkcs11.h_pkcs11h-core.hpkcs11h-def.h_pkcs11h-threading.hpkcs11h-core.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.h   O         ( O T\ ~      !! ' 9@w     # = D L f  q AA G V     }!:: A Y` g nx    : r      F P^ ww |    & -6 B LP3         R R [ f m t {       8 @ G R b z     t ~        & D H d h o y             1 1 7 F M T          & . ? F v v |      + TT ^      0 hh pw  ((@ G V a j   H~?   '~;N U \h   % (~4;rr x    # W          LL R ip      55 C J LS      /6 = sb h         66 n x     & (/ 6ff|     &CCV a ~     DD%.?  : ; @ ' ID I: ;  4I : ;  $> I: I !I/ I  !I/ I  :  I8 ' ID I : &I :  : .?  : ;@ ' ID I: ; 4I : ;  D D .? < ' ID .? < ' D .? < ' ID 4_pkcs11h_session_getSlotListF _pkcs11h_session_getObjectAttributesD'_pkcs11h_session_freeObjectAttributes'_pkcs11h_session_findObjects)_pkcs11h_session_getSessionByTokenId*_pkcs11h_session_release+_pkcs11h_session_reset'-_pkcs11h_session_getObjectByIdv._pkcs11h_session_validate.__pkcs11h_session_touch!/_pkcs11h_session_login0_pkcs11h_session_logout 4qCK_RVPKCS11H_BOOL_CK_VERSIONICK_C_InitializeuCK_C_FinalizeCK_FLAGS_CK_INFOUCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotList_CK_SLOT_INFOCK_C_GetSlotInfo_CK_TOKEN_INFOCK_C_GetTokenInfoCK_C_GetMechanismList5_CK_MECHANISM_INFOCK_C_GetMechanismInfoCK_C_InitToken( CK_C_InitPINe CK_C_SetPIN CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions8 CK_SLOT_IDI CK_STATEX _CK_SESSION_INFO CK_C_GetSessionInfo CK_C_GetOperationStateS CK_C_SetOperationState CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTEU CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSize? CK_C_GetAttributeValue CK_C_SetAttributeValue CK_C_FindObjectsInit CK_C_FindObjects+CK_C_FindObjectsFinalGCK_MECHANISM_TYPE__CK_MECHANISMCK_C_EncryptInitCK_C_EncryptTCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitCK_C_DecryptCCK_C_DecryptUpdate|CK_C_DecryptFinalCK_C_DigestInitCK_C_Digest!CK_C_DigestUpdateTCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitCK_C_Sign.CK_C_SignUpdatedCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitUCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInit=CK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateYCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPair<CK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandom7CK_C_GenerateRandomgCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTRCK_FUNCTION_LIST_PTRy_pkcs11h_thread_t_pkcs11h_provider_s}_pkcs11h_provider_tCK_BBOOL CK_ULONG_PTR" CK_SLOT_ID_PTR7 CK_ULONG[!pkcs11h_token_id_s!pkcs11h_token_id_t!CK_SESSION_HANDLE "time_tM"CK_BYTE_PTR_"size_tl"pkcs11h_certificate_id_s#pkcs11h_certificate_id_t=#pkcs11h_certificate_id_list_s"pkcs11h_certificate_id_list_t#uint16_t#uint8_t#k$$uint32_t$$upad64_t%g%_pthread_mutex%_pkcs11h_mutex_t%_pkcs11h_session_s _pkcs11h_session_t'CK_OBJECT_HANDLE#'CK_ATTRIBUTE_PTR-CK_TOKEN_INFO(.CK_OBJECT_CLASSR.CK_ATTRIBUTE0CK_UTF8CHAR_PTR     , *<O0tPP` +Jg@ A '`1AW ow & + 0Z _ d   l N S X   "3 :d i n ", 3      H M Rs _i p   ) D  K           & H n {        2  R !z   "   #  #  * b  g  l        8 #G W h  o      ,F M_ 1DZ a& !4 'iz  <Ld k  1 6 ;Xv })&> Eq * *' .<+Tdu |  *K P Ut +% ( /8> .,7GX _u/ '5 <  p t o's'''')+)0)4)9)=)))*$*0+%4+++++++,,,,$,(,v,z,,,,,,,,,,,L-(P-.)..,.>/-B///////>0B0G0K0P0T01+ 1;BNV^fnv~ $,6@HU\hrz'.:BLT\dlv (0:BLT^fnx *2:BLV^kr~ $.8@JT\fnv (0=$DPX`hpz%&.8@HRZblv    $ , 6 @ H R \ d n x                   * 4 > F S (Z f n v ~                   & 3 ): F P Z b j r |                ,  " * 4 > K -R ^ f n x                   " , 6 > F P X b j t |               !+(4>HPX`hr|  4 @   "$ +0*4,?,4KQaWoe`qur | x    $      /58 1315536416 0 0 100644 31724 ` ELFx4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.symtabpkcs11h-token.cBbss.bssDdata.dataDrodata.rodatapkcs11h_token_freeTokenId_g_pkcs11h_data__assert_g_pkcs11h_loglevel_pkcs11h_log_pkcs11h_mem_freepkcs11h_token_duplicateTokenId_pkcs11h_mem_duplicatepkcs11h_getMessagepkcs11h_token_sameTokenIdstrcmp_pkcs11h_token_getTokenId_pkcs11h_token_newTokenId_pkcs11h_util_fixupFixedStringstrncpy_pkcs11h_mem_mallocpkcs11h_token_logout_pkcs11h_session_getSessionByTokenId_pkcs11h_threading_mutexLock_pkcs11h_session_logout_pkcs11h_threading_mutexRelease_pkcs11h_session_releasepkcs11h_token_loginstrlen_pkcs11h_session_reset__pkcs11h_session_touchpkcs11h_token_ensureAccesspkcs11h_token_freeTokenIdListpkcs11h_token_enumTokenIds_pkcs11h_session_getSlotList.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenamesUuj@hh E E@ujAhh( E EEujBhhH E ErEPhXj jEPrhjEEÐUEuj[hh E E@uj\hh( E EEuj]hh E EE uj^hh E ErjjE PEPhjE@jjhdE PjEPEEt Er-jEPЋEj@PREPhjEEEÐUEuhhhX E EE uhhh` E EUE PPuiUE !P!PuIUE 2P2Pu)UE CPCPu EEEEEÐUEEuhhhh E EE uhhht E ErE Phj E @jEPEEtUj EPCP UEj PP UEj@P!P UEjPP2P EhCPEP E UPEEEtjEPr-jEPЋE j@PREPhjEEEÐUEEuhhh E E@uhhh( E EEuhhht E ErEPhj E@hdEPEEtEUPEEEtjEPEr-jEPЋEj@PREPh@jEEEÐUEEEEuhhhH E ErEPhj EPEPEEtNEj,PEEt-EjEPEEt EEtEj,PEEtjEPEr&jEPjjPEPhjEEEÐU EEEEEEuhZhhH E Er5E t E EjjEPEPhjEtjEPEEPEPEEt Ej,PEEtEjEPEEjjEPjjEPEEukjEPEEuRE t E EE@ 0UEjPjjREPA4ЃEEtGE@ 0UjjEPEPjBPALЃEEt E=tEEtEj,PEEtjEPEr&jEPjjPEPh0jEEEÐU EEEuhhh E E@uhhh( E EEuhhhH E ErjEPE PEPh`jEPEPEEtXEj,PEEt9EjjEPEPE PEPEEtEEtEj,PEEtjEPEr&jEPjjPEPhjEEEÐUEEuh hh E E@uh hh( E ErEPhj EtKEEE@EE@tEj@PE@jEPEurh0jEEÐU,EEEuh2hh E E@uh3hh( E EE uh4hh` E ErjjE PEPhxjE @j8PEEtE@EEEE@u]jjEPEPREPEEt@r.]jEPjPEPPhjEE;EEjEPEEuNE0MԋU܍0PPCЃEEu!EЃP0PEEtEЋUPEЉEEEEЃtjEPEE@EԋE;EBE܃tjEPEE@EEwE*E@ E܋E܃ EEEE؋E؃tCEԃu;U܋E؋@PBPtEE؋@E؋E؃tEԃtŋEԃEjEPEEu!U؋E܋@PBPEEtE؋UPE؉EEE؃t*E؋@tEj@PjEPE܋@E܋E܃E UPEEEtjEPEEtj8PEEr*jEPjE PREPhjEEE,_g_pkcs11h_data!=NULLpkcs11h-token.c_g_pkcs11h_data->initializedtoken_id!=NULLPKCS#11: pkcs11h_token_freeTokenId entry certificate_id=%pPKCS#11: pkcs11h_token_freeTokenId returnto!=NULLfrom!=NULLPKCS#11: pkcs11h_token_duplicateTokenId entry to=%p form=%pPKCS#11: pkcs11h_token_duplicateTokenId return rv=%lu-'%s', *to=%pa!=NULLb!=NULLinfo!=NULLp_token_id!=NULLPKCS#11: _pkcs11h_token_getTokenId entry p_token_id=%pPKCS#11: _pkcs11h_token_getTokenId return rv=%lu-'%s', *p_token_id=%pPKCS#11: _pkcs11h_token_newTokenId entry p_token_id=%pPKCS#11: _pkcs11h_token_newTokenId return rv=%lu-'%s', *p_token_id=%pPKCS#11: pkcs11h_token_logout entry token_id=%p PKCS#11: pkcs11h_token_logout return rv=%lu-'%s'PKCS#11: pkcs11h_token_login entry token_id=%p, readonly=%d PKCS#11: pkcs11h_token_login return rv=%lu-'%s'PKCS#11: pkcs11h_token_ensureAccess entry token_id=%p, user_data=%p, mask_prompt=%08xPKCS#11: pkcs11h_token_ensureAccess return rv=%lu-'%s'PKCS#11: pkcs11h_token_freeTokenIdList entry token_id_list=%pPKCS#11: pkcs11h_token_freeTokenIdList returnp_token_id_list!=NULLPKCS#11: pkcs11h_token_enumTokenIds entry method=%u, p_token_id_list=%pPKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: pkcs11h_token_enumTokenIds return rv=%lu-'%s', *p_token_id_list=%p%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21i1pkcs11h-token.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-token.o pkcs11h-token.c -W0,-xp.XAKk4Dpg4XaOFh9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOFh9.;backend;raw;cd;DBG_GEN 5.2.7pkcs11h_token_freeTokenId?Utoken_id>unsigned longCK_RVcharlong!)  : K !\  pkcs11h_token_id_sd display# manufacturerID# model)# serialNumber:# labelK# \pkcs11h_token_id_tpkcs11h_token_duplicateTokenIdXUY^toVcfromW rvY Ypkcs11h_token_sameTokenIdUab intPKCS11H_BOOL_pkcs11h_token_getTokenIdNUZinfop_token_id token_id rvunsigned charZ | Z  Z Z CK_FLAGS_CK_VERSION majorZ# minorZ#Z _CK_TOKEN_INFO labelk# manufacturerID|# model#@ serialNumber#P flags#` ulMaxSessionCount#d ulSessionCount#h ulMaxRwSessionCount#l ulRwSessionCount#p ulMaxPinLen#t ulMinPinLen#x ulTotalPublicMemory#| ulFreePublicMemory# ulTotalPrivateMemory# ulFreePrivateMemory# hardwareVersion# firmwareVersion# utcTime# CK_TOKEN_INFO_PTRY_pkcs11h_token_newTokenIdUJJp_token_id rv token_idYpkcs11h_token_logout Utoken_id mutex_locked rvsession'_pkcs11h_session_t"_pkcs11h_provider_t&!7  void 7U? DUCK_C_Initialize? pCK_C_FinalizeZ  Z  _CK_INFOL< cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H R < A R CK_C_GetInfo  j  o t  CK_C_GetFunctionList  Z   CK_C_GetSlotListZ@ ?Z  _CK_SLOT_INFOh slotDescription # manufacturerID #@ flags#` hardwareVersion#d firmwareVersion#f     CK_C_GetSlotInfo   CK_C_GetTokenInfo    CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize# ulMaxKeySize# flags# ,    CK_C_GetMechanismInfo Z    CK_C_InitToken    CK_C_InitPINW    2 W CK_C_SetPIN ? n  ?   CK_C_OpenSession   CK_C_CloseSession   CK_C_CloseAllSessionsCK_SLOT_IDCK_STATE_CK_SESSION_INFO slotID/ # state@ # flags# ulDeviceError# O    CK_C_GetSessionInfo    CK_C_GetOperationStateE  ECK_C_SetOperationState  gCK_C_Login CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE " type# pValue?# ulValueLen# G" 'GCK_C_CreateObject" dCK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSize1" 1CK_C_GetAttributeValues" SsCK_C_SetAttributeValue" CK_C_FindObjectsInit  CK_C_FindObjects CK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM  mechanism># pParameter?# ulParameterLen# V CK_C_EncryptInit     CK_C_EncryptF   !FCK_C_EncryptUpdate  dCK_C_EncryptFinal CK_C_DecryptInit   CK_C_Decrypt5   5CK_C_DecryptUpdaten  SnCK_C_DecryptFinal CK_C_DigestInit   CK_C_Digest  CK_C_DigestUpdateF 0FCK_C_DigestKey{  `{CK_C_DigestFinal CK_C_SignInit   CK_C_Sign    CK_C_SignUpdateV  ;VCK_C_SignFinal pCK_C_SignRecoverInit   CK_C_SignRecover CK_C_VerifyInitG   "GCK_C_Verifyy  ^yCK_C_VerifyUpdate  CK_C_VerifyFinal CK_C_VerifyRecoverInit/   /CK_C_VerifyRecoverr   MrCK_C_DigestEncryptUpdate   CK_C_DecryptDigestUpdate   CK_C_SignEncryptUpdateK   &KCK_C_DecryptVerifyUpdate" oCK_C_GenerateKey""  CK_C_GenerateKeyPair.  .CK_C_WrapKeyz " FzCK_C_UnwrapKey" CK_C_DeriveKey  CK_C_SeedRandom)  )CK_C_GenerateRandomY HYCK_C_GetFunctionStatus {CK_C_CancelFunction ? CK_C_WaitForSlotEvent _CK_FUNCTION_LISTI! version# C_InitializeZ# C_Finalize# C_GetInfoW # C_GetFunctionList # C_GetSlotList # C_GetSlotInfo # C_GetTokenInfo # C_GetMechanismList # C_GetMechanismInfo #$ C_InitToken #( C_InitPIN #, C_SetPIN\ #0 C_OpenSession #4 C_CloseSession #8 C_CloseAllSessions #< C_GetSessionInfo #@ C_GetOperationState#D C_SetOperationStateJ#H C_Login#L C_Logout#P C_CreateObjectL#T C_CopyObject#X C_DestroyObject#\ C_GetObjectSize#` C_GetAttributeValue6#d C_SetAttributeValuex#h C_FindObjectsInit#l C_FindObjects#p C_FindObjectsFinal"#t C_EncryptInit#x C_Encrypt#| C_EncryptUpdateK# C_EncryptFinal# C_DecryptInit# C_Decrypt# C_DecryptUpdate:# C_DecryptFinals# C_DigestInit# C_Digest# C_DigestUpdate# C_DigestKeyK# C_DigestFinal# C_SignInit# C_Sign# C_SignUpdate%# C_SignFinal[# C_SignRecoverInit# C_SignRecover# C_VerifyInit # C_VerifyL# C_VerifyUpdate~# C_VerifyFinal# C_VerifyRecoverInit# C_VerifyRecover4# C_DigestEncryptUpdatew# C_DecryptDigestUpdate# C_SignEncryptUpdate # C_DecryptVerifyUpdateP# C_GenerateKey# C_GenerateKeyPair# C_WrapKey3# C_UnwrapKey# C_DeriveKey# C_SeedRandom# C_GenerateRandom.# C_GetFunctionStatus^# C_CancelFunction# C_WaitForSlotEvent#j CK_FUNCTION_LIST_PTRunsignedd!_pkcs11h_thread_t _pkcs11h_provider_sT" next# enabled# reference# manufacturerID&# handle?# fI!# should_finalize# allow_protected_auth# cert_is_private# mask_private_moded!# mask_decrypt_moded!# slot_event_methodd!# slot_poll_intervald!# slotevent_threadp!# !CK_SESSION_HANDLEtime_ty$pkcs11h_certificate_id_list_t?# CK_BYTE_PTRd!size_t pkcs11h_certificate_id_s $ token_id# displayName,## attrCKA_ID?## attrCKA_ID_sizeQ## certificate_blob # certificate_blob_sizeQ## ^# $pkcs11h_certificate_id_tpkcs11h_certificate_id_list_sy$ next## certificate_id$# /$unsigned short~$uint16_t Zuint8_t  L% __pthread_mutex_flag1$# __pthread_mutex_flag2$# __pthread_mutex_ceiling$# __pthread_mutex_type$# __pthread_mutex_magic$#$]%  % __pthread_mutex_padL%#d!uint32_t  % __pthread_ownerpid%# __pthread_lockword%#unsigned long long%upad64_t  Y& __pthread_mutex_lock64]%# __pthread_mutex_lock32%# __pthread_mutex_owner64%#_pthread_mutex & __pthread_mutex_flags$# __pthread_mutex_lock%# __pthread_mutex_data%#Y&_pkcs11h_mutex_t_pkcs11h_session_sD' next# reference_count# valid# provider# token_id# session_handle"# allow_protected_auth_supported# pin_cache_period# pin_expire_time"# cached_certs##$ touch#( mutex&#, &pkcs11h_token_loginP U((token_idM(readonlyN (pinOmutex_lockedRslot/ Tpin_size(UrvVsessionX ((CK_ULONGpkcs11h_token_ensureAccessg U))token_id)user_data )mask_promptmutex_lockedsessionrvslot/ ?d!pkcs11h_token_freeTokenIdList Up**token_id_list_idp* _  W  W xp**pkcs11h_token_id_list_t pkcs11h_token_id_list_s * nextp*# token_id# *p*pkcs11h_token_enumTokenIds)+U,,method',p_token_id_list( mutex_locked+token_id_listp*.current_provider/rv0WBBslots,Kslotnum(Lslot_index/ MT%ggentryp*minfo,nWccsessionjxxentryp*foundd! *, CK_SLOT_ID_PTRCK_TOKEN_INFO - --d!_pkcs11h_util_fixupFixedStringf--$-)-'_pkcs11h_session_logout-f-'__pkcs11h_session_touch--'?d! _pkcs11h_session_reset.----'_pkcs11h_session_releaseD.. \D. 'N._pkcs11h_session_getSessionByTokenId.I.S."Z . _pkcs11h_session_getSlotList.....d! .._pkcs11h_log#/.. Y&#/_pkcs11h_threading_mutexRelease`/(/#/_pkcs11h_threading_mutexLock/`/7 / // d!/7 //d!_pkcs11h_mem_duplicate0////7 0 0 0_pkcs11h_mem_free9007 90 >0C0d!_pkcs11h_mem_malloc~0H0M0 0pkcs11h_getMessage00~0 0 0__assert000 0strncpy-1-0d! 1strlenQ#<11 <1 F1strcmpA1K1Z ? /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-token.cpkcs11.hpkcs11h-core.hpkcs11h-def.h_pkcs11h-core.h_pkcs11h-threading.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.hpkcs11h-token.h?; s        C {     8 <Czz       44 > W \t     CC I V] d     (( 2 N PY ` go }       <<W \x |        &- 4 ; B I      #         0 7 ? M T          S z z              % , \ \ b v |       # . ? I W y_  x x       ' [        LL T[ gn       b~%&- ; BK~Wc ju    y~   - 09 ? FN Y j xS~5          DD%.?  : ; @ ' ID I: ;  $> I: I !I/I  !I/  :  I8 I 4I : ;  &I : .?  : ;@ ' ID I: ; 4I : ; ' ID I :  :  .? < ' D .? < ' ID .? < ' ID :m1pkcs11h_token_freeTokenIdpkcs11h_token_duplicateTokenIdhpkcs11h_token_sameTokenId_pkcs11h_token_getTokenId_pkcs11h_token_newTokenIdOpkcs11h_token_logout'pkcs11h_token_login(pkcs11h_token_ensureAccess)pkcs11h_token_freeTokenIdList*pkcs11h_token_enumTokenIdsX m1CK_RV\pkcs11h_token_id_spkcs11h_token_id_tPKCS11H_BOOLCK_FLAGS_CK_VERSION_CK_TOKEN_INFOCK_TOKEN_INFO_PTRZCK_C_InitializeCK_C_Finalize_CK_INFOW CK_C_GetInfo CK_C_GetFunctionList CK_C_GetSlotList _CK_SLOT_INFO CK_C_GetSlotInfo CK_C_GetTokenInfo CK_C_GetMechanismList, _CK_MECHANISM_INFO CK_C_GetMechanismInfo CK_C_InitToken CK_C_InitPIN\ CK_C_SetPIN CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions/ CK_SLOT_ID@ CK_STATEO _CK_SESSION_INFO CK_C_GetSessionInfoCK_C_GetOperationStateJCK_C_SetOperationStateCK_C_LoginCK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTELCK_C_CreateObjectCK_C_CopyObjectCK_C_DestroyObjectCK_C_GetObjectSize6CK_C_GetAttributeValuexCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjects"CK_C_FindObjectsFinal>CK_MECHANISM_TYPEV_CK_MECHANISMCK_C_EncryptInitCK_C_EncryptKCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitCK_C_Decrypt:CK_C_DecryptUpdatesCK_C_DecryptFinalCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateKCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitCK_C_Sign%CK_C_SignUpdate[CK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecover CK_C_VerifyInitLCK_C_Verify~CK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInit4CK_C_VerifyRecoverwCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdate CK_C_SignEncryptUpdatePCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPair3CK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandom.CK_C_GenerateRandom^CK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTI!CK_FUNCTION_LIST_PTRp!_pkcs11h_thread_t!_pkcs11h_provider_s_pkcs11h_provider_t"CK_SESSION_HANDLE"time_t?#CK_BYTE_PTRQ#size_t^#pkcs11h_certificate_id_s$pkcs11h_certificate_id_t/$pkcs11h_certificate_id_list_s#pkcs11h_certificate_id_list_t$uint16_t$uint8_t$]%%uint32_t%%upad64_t%Y&_pthread_mutex&_pkcs11h_mutex_t&_pkcs11h_session_s_pkcs11h_session_t(CK_ULONG*pkcs11h_token_id_list_sp*pkcs11h_token_id_list_t,CK_SLOT_ID_PTR,CK_TOKEN_INFO     !3Ri| Pv O!Fc{ o p 7 R  <K P U~      $DS X ]     &DTl s    3Ss    & -Em 5 <et y ~      !< v    . 5E"f#$%& W \ a (" #* $Q )j *) %F &U e v  }         -  2  7 T l  s  " # ) % &- = N  U }            8 P ` j  q         5 : ?\r y#.(> Eu ,4k cq,%   j!n('()+)),*@*D*I*M*R*V**-*++++++ ,,,,,",X,\,a,e,j,n,,,,,,,LS^fnv",4AHT\fsz &08ELX`hpx!"*2<FNX`hrz' &08@JR\dlv~+",4<FPZblt|,",4<DLT\dnx-$.6@HRZdlv   $ , 6 > H P Z b l v                    ( 0 8 B L T   4 ++++",H+t4?m1KpO^ WYteB[>u\\ eo hHy o  p  x  x /75 1315536416 0 0 100644 82428 ` ELF>4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.symtabpkcs11h-certificate.c__pkcs11h_certificate_loadCertificate__pkcs11h_certificate_updateCertificateIdDescription__pkcs11h_certificate_getKeyAttributes__pkcs11h_certificate_doPrivateOperation__pkcs11h_certificate_splitCertificateIdListBbss.bssDdata.dataDrodata.rodata_pkcs11h_certificate_isBetterCertificate__assert_g_pkcs11h_loglevel_pkcs11h_log_g_pkcs11h_crypto_enginelocaltimeasctime_pkcs11h_certificate_newCertificateId_pkcs11h_mem_mallocpkcs11h_getMessage_pkcs11h_threading_mutexLock_pkcs11h_session_validate_pkcs11h_session_findObjects_pkcs11h_session_getObjectAttributes_pkcs11h_mem_free_pkcs11h_mem_duplicate_pkcs11h_session_freeObjectAttributes_pkcs11h_threading_mutexReleasestrlen.XBKk4Dpg4XaO1l9.__pkcs11h_certificate_updateCertificateIdDescription.unknownstrncpy.XBKk4Dpg4XaO1l9.__pkcs11h_certificate_updateCertificateIdDescription.separatorstrncat_pkcs11h_certificate_resetSession_pkcs11h_certificate_validateSession_pkcs11h_session_getObjectById_pkcs11h_session_login_g_pkcs11h_data_pkcs11h_session_logoutpkcs11h_certificate_freeCertificateIdpkcs11h_token_freeTokenIdpkcs11h_certificate_duplicateCertificateIdpkcs11h_certificate_setCertificateIdCertificateBlobpkcs11h_certificate_freeCertificate_pkcs11h_session_release_pkcs11h_threading_mutexFreepkcs11h_certificate_lockSessionpkcs11h_certificate_releaseSessionpkcs11h_certificate_signpkcs11h_certificate_signRecoverpkcs11h_certificate_decryptpkcs11h_certificate_unwrappkcs11h_certificate_signAnypkcs11h_certificate_decryptAnypkcs11h_certificate_create_pkcs11h_threading_mutexInit_pkcs11h_session_getSessionByTokenIdpkcs11h_certificate_getPromptMaskpkcs11h_certificate_setPromptMaskpkcs11h_certificate_getUserDatapkcs11h_certificate_setUserDatapkcs11h_certificate_getCertificateIdpkcs11h_certificate_getCertificateBlobmemmovepkcs11h_certificate_ensureCertificateAccesspkcs11h_certificate_ensureKeyAccess_pkcs11h_certificate_enumSessionCertificatespkcs11h_token_duplicateTokenIdpkcs11h_certificate_freeCertificateIdListpkcs11h_certificate_enumTokenCertificateIdspkcs11h_certificate_enumCertificateIds_pkcs11h_session_getSlotList_pkcs11h_token_getTokenId.rel.text.rel.data.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenames.rel.debug_varnamesU]EEujxhh E ErEPEPE PEPh(jE tEu EjjEPE PEPP ЃuEjjEPEPEPP ЃuErIjEPjPjEPjPjjPShjE;EEr.Et E EEPhj EEE]ÐU EEuhhh@ E ErEPhXj E@hEPEEtEr-jEPЋEj@PREPhjEEEÐUT]u}EEEܡEE EEEEEEEEEuhhh E EE@uhhh E EE@EE@ErEPh(j E@ j,PEЋEЃt EEj@ PEЋEЃtUjEPEPjEPB PEЋEЃtEE;E\EE E]M̋UjjjEPPC PEЋEЃtKrE@MUEj@0PB4PjE PA PEEt]E uLE@uA]EHEPEjPPPjC PEEtEEtE@ j,PEr&jEPjjPEPhjEEE]ÐU|]ETEXE\EEEEEE`EdEhEġlEȡpE̡tEСxEԡ|EءE܍EEEE̍EEءEEEEEEEEEuh-hh E E@uh.hh4 E EEuh/hh E EEuh0hhT E EE uh2hhd E ErGEt E @EEjEPEPEPEPEPE PEPhxj(Eu E @EjPEEtEEE@^jEPEEtE@ @ 0EP E@PEPBPЃ EE@ @ 0EP E@PEPBPЃ EE@ @ 0EP E@PEPBPЃ EgE@ @ 0EH UjjEPjEPEPEPBPEPAPЃ(EEE w$rEPhj EtE@E @EE@ @ 0EP jEPEPEPEPBPЃEE@ @ 0EP jEPEPEPEPBPЃEE@ @ 0EP jEPEPEPEPBPЃE\EEE@ @ 0EP jjjEPEPBPAdЃEEEEE w$E UPrEPhTj E=PuE t E@EtEt3"EuE t E@EEEt,E@ @ 0EP EPBPA\ЃEEE=PuEt E2uEEj@ PEuJr&jEPjjPEPhjEjjEP EEt EEtEjPEr-jEPЋE j@PREPhjEEE]d4pUuh%hh E E@uh&hh4 E EEuh'hh E ErEPh j EtEjPE tEj PE@tEj@PE@jEPrhhjEEÐU]EuhJhh E E@uhKhh4 E EEuhLhh E EE uhMhh E ErjjE PEPhjE@jjhE PjEPEEUE jjhd@PjBPEEEXEHU E jjPPPPEEuEEXEHU E jjP PP PEEtEr-jEPЋEj@PREPh jEEE]ÐUEuhhh E E@uhhh4 E EEuhhh E EE uhhhP E ErEPh\ j E t"Ej PEEt]MUjjEPE PP PEEt&jEP9EEtEr&jEPjjPEPh jEEEÐU uhhh E E@uhhh4 E ErEPh j EtkE@ tEj@ PE@ E@tEj@PE@EjPjEPrhH jEEUEuhhh E E@uhhh4 E EEuhhh E EE@ j,PEEtEEEEÐUEuhhh E E@uhhh4 E EEuhhh E EE@ t"E@ j,PEEtEEEEÐU Euhhh E E@uh hh4 E EEuh!hh E EEuh"hhT E EEuh$hhd E ErEEt E@EEjjEPEPEPEPE PEPh| j(Eu E@EPEPEPEPE PjEPEEtEr-jEPЋEj@PREPh jEEEÐU Euh]hh E E@uh^hh4 E EEuh_hh E EEuh`hhT E EEuhbhhd E ErEEt E@EEjjEPEPEPEPE PEPhL j(Eu E@EPEPEPEPE PjEPEEtEr-jEPЋEj@PREPh jEEEÐU Euhhh E E@uhhh4 E EEuhhh E EEuhhhT E EEuhhhd E ErEEt E@EEjjEPEPEPEPE PEPh, j(Eu E@EPEPEPEPE PjEPEEtEr-jEPЋEj@PREPh jEEEÐU Euhhh E E@uhhh4 E EEuhhh E EEuhhhT E EEuhhhd E ErEEt E@EEjjEPEPEPEPE PEPh j(Eu E@EPEPEPEPE PjEPEEtEr-jEPЋEj@PREPh jEEEÐU$EEuhhh E E@uhhh4 E EEuhhh E EEuhhhT E EEuhhhd E ErEEt E@EEjjEPEPEPEPE PEPh j(E@u7rh`jjEPEEtEuxE@tj(E_EPEPKEPEPEPEPE PEPc}tTtǐctht븋EutE@tf$E[EPEPG]EPEPEPEPE PEPc}tTtːctht뼋Eu E Er-jEPЋEj@PREPhjEEEÐU$EEuhhh E E@uhhh4 E EEuhhh E EEuhhhT E EEuhhhd E ErEEt E@EEjjEPEPEPEPE PEPhj(E@u7rh`jjEPEEtEuxE@tj(E_EPEPKEPEPEPEPE PEPc}tTtǐctht븋EutE@tf$E[EPEPG]EPEPEPEPE PEPc}tTtːctht뼋Eu E Er-jEPЋEj@PREPh\jEEEÐU EEEEuhhh E E@uhhh4 E EEuhhh E Er#EPEPEPE PEPhjE@j8EPEEtNEU P4EUP0E@EUPEjPEEtEEPEPEEtEPE PBPEEtE@ j,PEEtEE@teE@ @uUE@ RPFE@ U@;B~2EP E@ R +PEHE@ щP UE@ RPEUPEEEtE@(EuEj@$PE@$E@EEu¡@EE&EE@ujjEPEPREPEEtjEE;EMEEE0MЋU؍(PPCЃEEu9EP(PEEuEPEPEEtBE@(E̋@$u#EPE PEP EEt EEt@r6}uЋ]jEPPEPPPhDjẼtjEPEEȃtjEPEE@EЋE;EEEt8r.]jEPjPEPPhjE؃tjEPEE@EE@ EEEt#Et EE@(EE@$E؋E؃EjEPEEu!UԋE؋@PBPEEt,EԃtE@jEPEnEԋUPEԉEEE؋@E؋E؃hE@EE EPEPEP EEt EEtjEPEEtjhPEr&jEPjjPEPhjEEE$  bnewone!=NULLpkcs11h-certificate.cPKCS#11: _pkcs11h_certificate_isBetterCertificate entry current=%p, current_size=%08x, newone=%p, newone_size=%08xPKCS#11: _pkcs11h_certificate_isBetterCertificate notAfterCurrent='%s', notAfterNew='%s'PKCS#11: _pkcs11h_certificate_isBetterCertificate return is_better=%dp_certificate_id!=NULLPKCS#11: _pkcs11h_certificate_newCertificateId entry p_certificate_id=%pPKCS#11: _pkcs11h_certificate_newCertificateId return rv=%lu-'%s', *p_certificate_id=%pcertificate!=NULLcertificate->id!=NULLPKCS#11: __pkcs11h_certificate_loadCertificate entry certificate=%pPKCS#11: Cannot get object attribute for provider '%s' object %ld rv=%lu-'%s'PKCS#11: __pkcs11h_certificate_loadCertificate return rv=%lu-'%s'certificate_id!=NULLPKCS#11: __pkcs11h_certificate_updateCertificateIdDescription entry certificate_id=%pPKCS#11: __pkcs11h_certificate_updateCertificateIdDescription return displayName='%s'PKCS#11: __pkcs11h_certificate_getKeyAttributes entry certificate=%pPKCS#11: Key attributes enforced by provider (%08x)PKCS#11: Key attributes loaded (%08x)PKCS#11: Get private key attributes failed: %ld:'%s'PKCS#11: __pkcs11h_certificate_getKeyAttributes return rv=%lu-'%s'PKCS#11: _pkcs11h_certificate_validateSession entry certificate=%pPKCS#11: _pkcs11h_certificate_validateSession return rv=%lu-'%s'PKCS#11: _pkcs11h_certificate_resetSession entry certificate=%p, public_only=%d, session_mutex_locked=%dPKCS#11: _pkcs11h_certificate_resetSession return rv=%lu-'%s'_g_pkcs11h_data!=NULL_g_pkcs11h_data->initializedsource!=NULLp_target_size!=NULLPKCS#11: __pkcs11h_certificate_doPrivateOperation entry certificate=%p, op=%d, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: __pkcs11h_certificate_doPrivateOperation init rv=%ldPKCS#11: __pkcs11h_certificate_doPrivateOperation op rv=%ldPKCS#11: Private key operation failed rv=%lu-'%s'PKCS#11: __pkcs11h_certificate_doPrivateOperation return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_freeCertificateId entry certificate_id=%pPKCS#11: pkcs11h_certificate_freeCertificateId returnto!=NULLfrom!=NULLPKCS#11: pkcs11h_certificate_duplicateCertificateId entry to=%p form=%pPKCS#11: pkcs11h_certificate_duplicateCertificateId return rv=%lu-'%s', *to=%pblob!=NULLPKCS#11: pkcs11h_certificate_setCertificateIdCertificateBlob entry certificate_id=%pPKCS#11: pkcs11h_certificate_setCertificateIdCertificateBlob return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_freeCertificate entry certificate=%pPKCS#11: pkcs11h_certificate_freeCertificate returnPKCS#11: pkcs11h_certificate_sign entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_sign return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_signRecover entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_signRecover return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_decrypt entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_decrypt return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_unwrap entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_unwrap return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_signAny entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: Getting key attributesPKCS#11: pkcs11h_certificate_signAny return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_decryptAny entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_decryptAny return rv=%lu-'%s', *p_target_size=%08xp_certificate!=NULLPKCS#11: pkcs11h_certificate_create entry certificate_id=%p, user_data=%p, mask_prompt=%08x, pin_cache_period=%d, p_certificate=%pPKCS#11: pkcs11h_certificate_create return rv=%lu-'%s' *p_certificate=%pPKCS#11: pkcs11h_certificate_getCertificateId entry certificate=%p, certificate_id=%pPKCS#11: pkcs11h_certificate_getCertificateId return rv=%lu-'%s'p_certificate_blob_size!=NULLPKCS#11: pkcs11h_certificate_getCertificateBlob entry certificate=%p, certificate_blob=%p, *p_certificate_blob_size=%08xPKCS#11: pkcs11h_certificate_getCertificateBlob return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureCertificateAccess entry certificate=%pPKCS#11: Cannot access existing object rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureCertificateAccess return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureKeyAccess entry certificate=%pPKCS#11: pkcs11h_certificate_ensureKeyAccess return rv=%lu-'%s'session!=NULLPKCS#11: _pkcs11h_certificate_enumSessionCertificates entry session=%p, user_data=%p, mask_prompt=%08xPKCS#11: Get certificate attributes failed: %ld:'%s'PKCS#11: _pkcs11h_certificate_enumSessionCertificates return rv=%lu-'%s'p_cert_id_end_list!=NULLPKCS#11: __pkcs11h_certificate_splitCertificateIdList entry cert_id_all=%p, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: __pkcs11h_certificate_splitCertificateIdList return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_freeCertificateIdList entry cert_id_list=%pPKCS#11: pkcs11h_certificate_freeCertificateIdList returntoken_id!=NULLPKCS#11: pkcs11h_certificate_enumTokenCertificateIds entry token_id=%p, method=%u, user_data=%p, mask_prompt=%08x, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: pkcs11h_certificate_enumTokenCertificateIds return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_enumCertificateIds entry method=%u, mask_prompt=%08x, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: Cannot get token information for provider '%s' slot %ld rv=%lu-'%s'PKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: pkcs11h_certificate_enumCertificateIds return rv=%lu-'%s' on UNKNOWN%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21Ppkcs11h-certificate.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-certificate.o pkcs11h-certificate.c -W0,-xp.XAKk4Dpg4XaO1l9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaO1l9.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_certificate_isBetterCertificatetUcurrentpcurrent_sizeq  newonernewone_sizesis_betterulBBBnotAfterCurrentnotAfterNewintPKCS11H_BOOLunsigned char unsignedsize_t longtime_t_pkcs11h_certificate_newCertificateIdaUp_certificate_idrvunsigned longCK_RVchar   !      !  pkcs11h_token_id_sddisplay#manufacturerID#model#serialNumber#label# pkcs11h_token_id_t   CK_BYTE_PTRpkcs11h_certificate_id_s~token_id#displayName#attrCKA_ID#attrCKA_ID_size#certificate_blob#certificate_blob_size#  ~__pkcs11h_certificate_loadCertificate0U1)certificatemutex_lockedcert_filter_class6)cert_filter_)objectsp)objects_foundu)rviu)o\\attrs)C ~pkcs11h_certificate_id_t((_pkcs11h_session_t '$_pkcs11h_provider_t 6  !G  void G_CK_VERSIONmajor#minor#O CK_C_InitializeO CK_C_Finalize   CK_FLAGS   _CK_INFOLcryptokiVersionT#manufacturerID#flags#$libraryDescription#(libraryVersionT#H  CK_C_GetInfo <  CK_C_GetFunctionList    CK_C_GetSlotList @A ?  R _CK_SLOT_INFOh slotDescription0 #manufacturerIDA #@flags#`hardwareVersionT#dfirmwareVersionT#f R    CK_C_GetSlotInfo     .  ?  P  a _CK_TOKEN_INFO label #manufacturerID # model. #@serialNumber? #Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersionT#firmwareVersionT#utcTimeP # a -   - CK_C_GetTokenInfoe  J e CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize#ulMaxKeySize#flags#    CK_C_GetMechanismInfo:   : CK_C_InitTokeno  T o CK_C_InitPIN   CK_C_SetPIN O O  CK_C_OpenSession5 $5CK_C_CloseSessionc RcCK_C_CloseAllSessionsCK_SLOT_IDCK_STATE_CK_SESSION_INFOslotID#state#flags#ulDeviceError#  CK_C_GetSessionInfoS 8SCK_C_GetOperationState uCK_C_SetOperationState CK_C_Login CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE wtype#pValueO#ulValueLen# 2w |CK_C_CreateObjectw CK_C_CopyObject CK_C_DestroyObjectH -HCK_C_GetObjectSizew fCK_C_GetAttributeValuew CK_C_SetAttributeValuew CK_C_FindObjectsInitE %ECK_C_FindObjectsr arCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM mechanism#pParameterO#ulParameterLen#  CK_C_EncryptInit^ 9^CK_C_Encrypt vCK_C_EncryptUpdate CK_C_EncryptFinal   CK_C_DecryptInitM (MCK_C_Decrypt eCK_C_DecryptUpdate CK_C_DecryptFinal CK_C_DigestInit6 6CK_C_Digesth MhCK_C_DigestUpdate CK_C_DigestKey CK_C_DigestFinal CK_C_SignInitE ECK_C_Signu ZuCK_C_SignUpdate CK_C_SignFinal CK_C_SignRecoverInit% %CK_C_SignRecover\ A\CK_C_VerifyInit wCK_C_Verify CK_C_VerifyUpdate CK_C_VerifyFinal= "=CK_C_VerifyRecoverInit _CK_C_VerifyRecover CK_C_DigestEncryptUpdate CK_C_DecryptDigestUpdateY 4YCK_C_SignEncryptUpdate {CK_C_DecryptVerifyUpdatew CK_C_GenerateKey9ww 9CK_C_GenerateKeyPair YCK_C_WrapKeyw CK_C_UnwrapKeyw CK_C_DeriveKeyH -HCK_C_SeedRandom~ c~CK_C_GenerateRandom CK_C_GetFunctionStatus CK_C_CancelFunctionO CK_C_WaitForSlotEvent_CK_FUNCTION_LIST"versionT#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList #C_GetSlotInfo #C_GetTokenInfo2 #C_GetMechanismListj # C_GetMechanismInfo #$C_InitToken? #(C_InitPINt #,C_SetPIN #0C_OpenSession #4C_CloseSession:#8C_CloseAllSessionsh#<C_GetSessionInfo#@C_GetOperationStateX#DC_SetOperationState#HC_Login#LC_Logout#PC_CreateObject#TC_CopyObject#XC_DestroyObject#\C_GetObjectSizeM#`C_GetAttributeValue#dC_SetAttributeValue#hC_FindObjectsInit #lC_FindObjectsJ#pC_FindObjectsFinalw#tC_EncryptInit"#xC_Encryptc#|C_EncryptUpdate#C_EncryptFinal#C_DecryptInit#C_DecryptR#C_DecryptUpdate#C_DecryptFinal#C_DigestInit#C_Digest;#C_DigestUpdatem#C_DigestKey#C_DigestFinal#C_SignInit #C_SignJ#C_SignUpdatez#C_SignFinal#C_SignRecoverInit#C_SignRecover*#C_VerifyInita#C_Verify#C_VerifyUpdate#C_VerifyFinal #C_VerifyRecoverInitB#C_VerifyRecover#C_DigestEncryptUpdate#C_DecryptDigestUpdate#C_SignEncryptUpdate^#C_DecryptVerifyUpdate#C_GenerateKey#C_GenerateKeyPair>#C_WrapKey#C_UnwrapKey#C_DeriveKey#C_SeedRandomM#C_GenerateRandom#C_GetFunctionStatus#C_CancelFunction#C_WaitForSlotEvent #CK_FUNCTION_LIST_PTR_pkcs11h_thread_t _pkcs11h_provider_sT '$next #enabled#reference##manufacturerID6#handleO#f"#should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread"# "CK_SESSION_HANDLE$pkcs11h_certificate_id_list_tpkcs11h_certificate_id_list_s$nextD$#certificate_id# h$unsigned short$uint16_t uint8_t  %__pthread_mutex_flag1$#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type$#__pthread_mutex_magic$# $%  %__pthread_mutex_pad%#uint32_t  &__pthread_ownerpid%#__pthread_lockword%#unsigned long long&upad64_t  &__pthread_mutex_lock64%#__pthread_mutex_lock32%#__pthread_mutex_owner64&#_pthread_mutex '__pthread_mutex_flags$#__pthread_mutex_lock,&#__pthread_mutex_data&#&_pkcs11h_mutex_t _pkcs11h_session_sD ((next#reference_count#valid#provider # token_id#session_handle,$#allow_protected_auth_supported#pin_cache_period#pin_expire_time# cached_certsD$#$touch#(mutex'#, 'CK_OBJECT_HANDLEpkcs11h_certificate_s8)id#pin_cache_period#mask_private_mode#session# key_handle-(#operation_active#mutex'#mask_prompt#0user_dataO#4 D()pkcs11h_certificate_t)CK_OBJECT_CLASS2CK_ATTRIBUTE L)p)  -(CK_ULONG L) ) __pkcs11h_certificate_updateCertificateIdDescriptionU.*certificate_idseparator3*unknown=* .* 8*__pkcs11h_certificate_getKeyAttributes U++certificatemutex_lockedrvop_succeedlogin_retry] i i key_attrs+   key_attrs_sign ,key_attrs_sign_recover ,key_attrs_decrypt ,key_attrs_unwrap ,C) L)0+ CK_BBOOL +_pkcs11h_certificate_validateSession^ Ux,x,certificate]rvd)_pkcs11h_certificate_resetSessionUr-r-certificatew-public_only |-session_mutex_lockedmutex_lockedsession_validcert_handle-(rv)__pkcs11h_certificate_doPrivateOperationU//certificate P0op  U0mech_type d0sourcei0source_sizen0targetx0p_target_size mutex_lockedmech}0wrap_attrs_true+class6)keytype0wrap_attrs0wrap_value0$wrap_key-('rv)login_retry*op_succeed+#4/(/(sizeu)LC)__pkcs11h_private_op_eP0__pkcs11h_private_op_sign__pkcs11h_private_op_sign_recover__pkcs11h_private_op_decrypt__pkcs11h_private_op_unwrap/ Z0_0 s0CK_MECHANISMCK_KEY_TYPE L)$0  L) 0 pkcs11h_certificate_freeCertificateId$'U1certificate_id#pkcs11h_certificate_duplicateCertificateIdG|U11toE1fromF rvHpkcs11h_certificate_setCertificateIdCertificateBlobJUA2A2certificate_idP2blob U2blob_sizerv F2K2pkcs11h_certificate_freeCertificateU2)certificatepkcs11h_certificate_lockSessionfU33certificaterv)pkcs11h_certificate_releaseSessionbU33certificaterv)pkcs11h_certificate_signe UN4N4certificateS4mech_type b4sourceg4source_sizel4targetq4p_target_sizerv) X4]4s0pkcs11h_certificate_signRecoverZe"UD5D5certificateTI5mech_typeU X5sourceV]5source_sizeWb5targetXg5p_target_sizeYrv[) N5S5s0pkcs11h_certificate_decrypte$U6666certificate;6mech_type J6sourceO6source_sizeT6targetY6p_target_sizerv) @6E6s0pkcs11h_certificate_unwrape&U'7'7certificate,7mech_type ;7source@7source_sizeE7targetJ7p_target_sizerv) 1767s0pkcs11h_certificate_signAny})U/8/8certificate48mech_type C8sourceH8source_sizeM8targetR8p_target_sizervacked) 98>8s0pkcs11h_certificate_decryptAny,U:9:9certificate?9mech_type N9sourceS9source_sizeX9target]9p_target_sizervacked) D9I9s0pkcs11h_certificate_create/Uz:z:certificate_id:user_data :mask_prompt:pin_cache_period:p_certificatehave_mutexmutex_lockedcertificate)rvO ):pkcs11h_certificate_getPromptMaskvI0U::certificateu)pkcs11h_certificate_setPromptMask0UX;X;certificate~];mask_prompt )pkcs11h_certificate_getUserData0UO;;certificate)pkcs11h_certificate_setUserData61U<<certificate!<user_data )Opkcs11h_certificate_getCertificateId2U<<certificate<p_certificate_id rv)pkcs11h_certificate_getCertificateBlob5U==certificate>certificate_blob >p_certificate_blob_sizemutex_lockedrvcertifiate_blob_size_max+44@44@44op_succeedlogin_retry)s0pkcs11h_certificate_ensureCertificateAccess3,8U ? ?certificate2mutex_locked_cert5mutex_locked_sess6validCert8rv9676767h-(M)pkcs11h_certificate_ensureKeyAccess:U??certificatemutex_locked_certmutex_locked_sessrvvalid_key)_pkcs11h_certificate_enumSessionCertificates 4?UAAsession Auser_data  Amask_prompt mutex_locked op_succeed login_retry rv o;>{;>{;>cert_filter_class6)) cert_filterA* objectsp). objects_foundu)/ iu)1 ;-> <> <>certificate_idD new_elementD$E attrsBG C O L) B  L)B __pkcs11h_certificate_splitCertificateIdList BUfDfDcert_id_all pDp_cert_id_issuers_list  uDp_cert_id_end_list info_s nextzD#e#is_issuer#zDinfo_tcert_id_issuers_listD$ cert_id_end_listD$ entryD$ headB infoB rv ?S@?B@?B@new_infoB S@ Ae@@e@@info2B AA%AA%AAnew_entryD$! *BWB2BOB2BOBentryBU D$ $kDkD Bpkcs11h_certificate_freeCertificateIdListp CU E Ecert_id_listo _idD$q lCCtCCtCCxD$~ D$pkcs11h_certificate_enumTokenCertificateIds fFUFFFFtoken_id KFmethod  PFuser_data UFmask_prompt ZFp_cert_id_issuers_list _Fp_cert_id_end_list mutex_locked session rv OkDkDpkcs11h_certificate_enumCertificateIds LUIImethod  Iuser_data  Imask_prompt Ip_cert_id_issuers_list Ip_cert_id_end_list mutex_locked cert_id_listD$ current_provider  current_session rv HEJH0JH0Jslots I- slotnumu). slot_index/ lHIHIHIsessionE token_idF info5IG EJPK\J;K\J;K\J;KJ;KJ;KentryD$ J;KJ&KJ&Knew_entryD$ OkDkDCK_SLOT_ID_PTRa CK_TOKEN_INFO NI _pkcs11h_token_getTokenIdIIISI(( _pkcs11h_session_logoutII((O _pkcs11h_session_loginJIIIII(( _pkcs11h_session_validateCJJ(( _pkcs11h_session_getObjectByIdJCJHJMJRJWJ(( _pkcs11h_session_releaseJJ ((J _pkcs11h_session_getSessionByTokenIdKJJ((2 $K)K 8K  _pkcs11h_session_findObjectsKK.K3K=KBKw _pkcs11h_session_freeObjectAttributesKKK((w _pkcs11h_session_getObjectAttributes.LKKKK'$8K _pkcs11h_session_getSlotList|L.L3L8LBK LL!_pkcs11h_logL|LL" &L _pkcs11h_threading_mutexFreeLLL _pkcs11h_threading_mutexRelease$MLL _pkcs11h_threading_mutexLockYM$ML _pkcs11h_threading_mutexInitMYMG M MMs0G MM _pkcs11h_mem_duplicateMMMMMG M MM _pkcs11h_mem_free-NNG -N 2N7N _pkcs11h_mem_mallocrN        " <s    >m {         ((D L S] i     ' , 2 8 > D X g {              ( 0 ` ` s z             C ` ` |             3           ; D P            : <CK _ f    Nl s z     / c       #/> W \d    P T [ `\o'     - 4m p v    V0      $, 4 @DK RZ         & (~4< M T   ; o           " 9@ w    @@ J. 07nn t     3 g       ?? E V         ! 2 <M[tt {     3 R T[av }   # . M PW]v }   # W        # Z Z ` v  }   #! W! ! ! ! ! ! " "#"Z"Z" `" v" }" " " ## W# # # # # # $ $#$Z$Z$ `$ v$ }$ $ $ #% W% % % % % % & &#&Z&Z& `& v& }& & & & +' _' ' ' ' ' (( ( $(:( <( C( H(W( \( d(v(( ( ( (( ( (v )() /) 4);)r)r) x) ) ) ) ) * ;* o* * * * * ++ /+ 4+J+ L+ S+ X+g+ l+ t+v++ + + ++ + +v0,8, ?, D,K,,, , , , , , , , '- [- -- - - -- - - -- - -.  .D. L.k. p. w.. . ... .. . ./ / $/;/ B/J/ U/ f/ p/ {/ / // //// / 0;0 D0 V00 0 00 0 0+1 41 F1M1 1 1 1 '2 L2L2j2 l2s222 2 22 2 2 3 ?3 s3 3 33 3 3 44 $4 +4@4 G4 N4 V4 o4 t4{4 44 4 444 4l44 4 44 4  5 5 545;5C5 T5 [555 5 55 5 5 5 5 76 k6 666 6 66 66 6 6 +7 0777?7 S7 Z7b7 7777 777 77 7 788 $8 98@8 G8 N8 U8 8 8 8 9949 <9 C9O9 n9 p9 w9 9 999 9 99 :: $:,:G: L:S:[: b:j: {: ::: : :: : : : ;F;F;b; h; o;{; ;; ; ;; ; ; ; < < <I<!O= T=`= i= p= y= = == = == = == = >>->4> ;>C> Q>Y> a> >>> >> >~>> > > ? ? &? I?P? W? ^? e? l? s?? ?? ? ? ?? ?? @  @)@ 5@ ;@ B@vK@~S@Y@ e@l@r@ @@@x@~@{A~ AA A %A,A fA nA yA A A AA A A A AA A A]A~A*B  B BB #B *B2B 8B AB OB|WB_B mBuB BBB B BB C OClClC tC zC C C C C CyC CC C CC D  D CD D DD E E $E .E 8EVE \E cE~E EE E EE E E EEE  FF $F +F[F[F aF FF FF F GGG pGpG xG G GG G GG GG G G G|H~H H H&H1H 8H dH lHsH HH HH HI  I,I 0I7I?I III I II I IFI~III JJJ )J 0J9J~EJPJ \J J JJ JJ J J J K  K KK K &Ki/K~;KqDK~PK5oK tK{KK K KK K KKK K  DD%.?  : ; @ ' ID I: ;  4I : ;   $> I: &I I I  !I/ I  !I/  :  I8 . : ; @ ' ID 4I : ; D D  : ' ID I :  : . : ;@ ' ID I: ; .?  : ;@ ' ID  ( .?  : ;@ ' D  I .? < ' ID !.? < ' D "#.? < ' ID P_pkcs11h_certificate_isBetterCertificate(_pkcs11h_certificate_newCertificateId,_pkcs11h_certificate_validateSession},_pkcs11h_certificate_resetSession0pkcs11h_certificate_freeCertificateId1pkcs11h_certificate_duplicateCertificateId1pkcs11h_certificate_setCertificateIdCertificateBlobZ2pkcs11h_certificate_freeCertificate2pkcs11h_certificate_lockSession3pkcs11h_certificate_releaseSession3pkcs11h_certificate_signv4pkcs11h_certificate_signRecoverl5pkcs11h_certificate_decrypt^6pkcs11h_certificate_unwrapO7pkcs11h_certificate_signAnyW8pkcs11h_certificate_decryptAnyb9pkcs11h_certificate_create:pkcs11h_certificate_getPromptMask:pkcs11h_certificate_setPromptMaskb;pkcs11h_certificate_getUserData;pkcs11h_certificate_setUserData&<pkcs11h_certificate_getCertificateId<pkcs11h_certificate_getCertificateBlob >pkcs11h_certificate_ensureCertificateAccess?pkcs11h_certificate_ensureKeyAccess?_pkcs11h_certificate_enumSessionCertificatesDpkcs11h_certificate_freeCertificateIdList%Epkcs11h_certificate_enumTokenCertificateIdsdFpkcs11h_certificate_enumCertificateIdsP__pkcs11h_certificate_loadCertificate)__pkcs11h_certificate_updateCertificateIdDescriptionB*__pkcs11h_certificate_getKeyAttributes-__pkcs11h_certificate_doPrivateOperationB__pkcs11h_certificate_splitCertificateIdList PPKCS11H_BOOLsize_ttime_tCK_RVpkcs11h_token_id_spkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_spkcs11h_certificate_id_tT_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS _CK_INFOCK_C_GetInfoCK_C_GetFunctionList CK_C_GetSlotListR _CK_SLOT_INFO CK_C_GetSlotInfoa _CK_TOKEN_INFO2 CK_C_GetTokenInfoj CK_C_GetMechanismList _CK_MECHANISM_INFO CK_C_GetMechanismInfo? CK_C_InitTokent CK_C_InitPIN CK_C_SetPIN CK_C_OpenSession:CK_C_CloseSessionhCK_C_CloseAllSessionsCK_SLOT_IDCK_STATE_CK_SESSION_INFOCK_C_GetSessionInfoXCK_C_GetOperationStateCK_C_SetOperationStateCK_C_LoginCK_C_LogoutCK_ATTRIBUTE_TYPE2_CK_ATTRIBUTECK_C_CreateObjectCK_C_CopyObjectCK_C_DestroyObjectMCK_C_GetObjectSizeCK_C_GetAttributeValueCK_C_SetAttributeValue CK_C_FindObjectsInitJCK_C_FindObjectswCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM"CK_C_EncryptInitcCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitRCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInit;CK_C_DigestmCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinal CK_C_SignInitJCK_C_SignzCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInit*CK_C_SignRecoveraCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdate CK_C_VerifyFinalBCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdate^CK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKey>CK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKeyMCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction CK_C_WaitForSlotEvent<_CK_FUNCTION_LIST"CK_FUNCTION_LIST_PTR"_pkcs11h_thread_t"_pkcs11h_provider_s _pkcs11h_provider_t,$CK_SESSION_HANDLEh$pkcs11h_certificate_id_list_sD$pkcs11h_certificate_id_list_t$uint16_t$uint8_t$%%uint32_t%&upad64_t,&&_pthread_mutex'_pkcs11h_mutex_t'_pkcs11h_session_s_pkcs11h_session_t-(CK_OBJECT_HANDLED(pkcs11h_certificate_s)pkcs11h_certificate_t6)CK_OBJECT_CLASSL)CK_ATTRIBUTEu)CK_ULONG+CK_BBOOL/__pkcs11h_private_op_e}0CK_MECHANISM0CK_KEY_TYPE ICK_SLOT_ID_PTR5ICK_TOKEN_INFO$Otm(P)separator*unknownp0}!EHq@?     !:DLr$;a.6 X }g0LFzP0pp0p Pp"lp$p& ) ,o0IAP0Fc0I0F@1n25#08G:ttBCvpF -  %D^e %,Cls 0!HO       %*ft{"#$  $ G%Zy!&%'J()&!JOTt*+ ,*--7.N*f.| !2"k  %    (1 A !R Y i / )  !    % D R Y j #  !     4 ~   ") 1z 1 2(1X)gw!         % - 5 O W _ 33 =BGqv{"E0kp~4!/F)Ue!}33INSp~&&6& A3PUZx329^''''8H!`g33 AFKhv}&' !18W3fkp3:+5F;T&\fm33 @"~33;)~3316;ejo$ 4 !L S ~ 3    3    !!1!6!;!e!j!o!!!!$"4"!L"S"~"3""""3""""##1#6#;#e#j#o####$$4$!L$S$~$3$$$$3$$$$%%1%6%;%e%j%o%%%%$&4&!L&S&&3&&&&3&&&' ''9'>'C'm'r'w'''''''}(>(?<)L)!d)k))3))))3)))***I*N*S*}*******+++@ ,AL,\,!t,{,,3,,,,3,--5-:-?-\-z--- -E.72.FY."/)4/)_/:/5/;/&//!//000d0i0n00001 11N13]1b1g11311111122 2(2>2E2X27t22!22232223333 3M3R3W3333333 4"4/-5MM5)\5l5!}555355553666E6J6O6l6z666"6"71L7)c7s7!777/7)77!88V83e8j8o8838888888 99"9"\9"919)99! ::5:/t:)::!::::; ;8;?;P;"; ; ; ;#;$< "< *< 2< :< B< b<%<<Q<' ='== =5=&=(==! >>J>&b>r>!>>>2>)>?!????????@ @@3A TA7A5A&HB&fBR|BRBB!BBB3BBBC3&C+C0CPC^CeCC5C&CCC D3D D%DDD3VD[D`DDDDDDDDEE9E3DE"lEFEREPF:F3F),F34?45@56A6q7Bu7|8C89D9:G:;H;;I;;J;Q<KU<<L<=======>NA>>>>>>>9?O=?@P@@@@@@@jAnAsAwA|AAKBOBCCCCCCCCCCCCCCDD DD2D6D;D?DDDHDDRDDDDDEEWES[EFTFGGGGGGHHH#H(H,H}HHHHHHHHHHHHHHHHHHY`lv~ &08BJT^hp} &.8BLT^hpx$.6CJV^hrz  (0:BLV^fpx(2:DNV^fpz0"*4<DNXbjw/~ *2<DNX`jt|     ( 0 8 @ H R Z b l t |                   ( 0 : B J T \ f n x                    & 0 8 B L T ^ f n x                  5 * 2 : B L T \ d l t |       7            & 0 8 E 8L X ` h p x               9 &.6>FNV^hr|<= $,4<FP_>frz?$,4<DNV^hpz@ &08EALX`hpxB "*2<DLV^fpz$.6CCJV^fnv~ &.8@HR\dlvD &.8@HRZdlv~ $,4<FNXbltGHIJ !K(4<DLT\fpxL"*2<DLT\dnv (2<DQNXdlt|",4>HRZdnvO (2:BJT\fpx P&2:BJR\fpx (08BJR\dlv~&.8BJW^jrz (2:DNV`jt~    $ , 6 @ J R Z d l t ~             R !!!!$!,!4! >/98 1315536416 0 0 100644 25132 ` ELF^4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.symtabpkcs11h-slotevent.c__pkcs11h_slotevent_checksum__pkcs11h_slotevent_provider__pkcs11h_slotevent_managerBbss.bssDdata.dataDrodata.rodata_g_pkcs11h_loglevel_pkcs11h_log_g_pkcs11h_data_pkcs11h_threading_condSignal_pkcs11h_threading_sleep_pkcs11h_session_getSlotList_pkcs11h_mem_free_pkcs11h_threading_threadStart_pkcs11h_threading_threadJoin_pkcs11h_threading_condWait_pkcs11h_slotevent_init_pkcs11h_threading_condInitpkcs11h_getMessage_pkcs11h_slotevent_notify_pkcs11h_slotevent_terminate_force_pkcs11h_threading_condFree_pkcs11h_slotevent_terminate.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenamesU EEE;E s!EE@U‰EE@EE;E rߋEEEÐU40,EEErEPhj E@uEELu EǀLE4u/rEPh<j EǀHEHtEHrEPhxj E@E0jEPjЃ EEuyrEPhj jPu2E@t'E0jEPjЃ EEtETtEHtEHLErEPhj E@E0jEPjЃ EEt EEuIEt>rEPhj EjPEjLPEuBE@t7E0jEPjЃ EENEBETt9EHtEHEErEPhj E@EErEPhHj jjEPEPREPEEtEE;EE0MU܍8PPCЃuVj 8PXj XPEjxP2jEP MȉME@EE;EpEt E?E;Et7rEPhj jPEEEE܃tjEPEtCuEjLPuE@<rEPhpj EE40,ÐU Erhjrhjj@PB$ЃEuErhj@EEE@tFEPu4rh4jUEPhPP jhP EEtǀEr&jEPjjPEPhjEEEÐUrhjt$ǀjPrhjEEÐUt$jPǀEEÐUrhDjt>ǀtjPrhpjEEPKCS#11: __pkcs11h_slotevent_provider provider='%s' entryPKCS#11: Setup slotevent provider='%s' mode hardset to pollPKCS#11: Setup slotevent provider='%s' checking triggerPKCS#11: Slotevent provider='%s' eventPKCS#11: Setup slotevent provider='%s' checking pollPKCS#11: Setup slotevent provider='%s' checking fetchPKCS#11: Slotevent provider='%s' pollPKCS#11: __pkcs11h_slotevent_provider provider='%s' returnPKCS#11: __pkcs11h_slotevent_manager entryPKCS#11: Calling slotevent hookPKCS#11: __pkcs11h_slotevent_manager examine provider listPKCS#11: __pkcs11h_slotevent_manager found enabled provider without threadPKCS#11: __pkcs11h_slotevent_manager found disabled provider with threadPKCS#11: __pkcs11h_slotevent_manager waiting for sloteventPKCS#11: Slotevent skipping eventPKCS#11: __pkcs11h_slotevent_manager joining threadsPKCS#11: __pkcs11h_slotevent_manager returnPKCS#11: _pkcs11h_slotevent_init entryPKCS#11: _pkcs11h_slotevent_init return rv=%lu-'%s'PKCS#11: _pkcs11h_slotevent_notify entryPKCS#11: _pkcs11h_slotevent_notify returnPKCS#11: _pkcs11h_slotevent_terminate entryPKCS#11: _pkcs11h_slotevent_terminate return%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21K)pkcs11h-slotevent.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-slotevent.o pkcs11h-slotevent.c -W0,-xp.XAKk4Dpg4XaOlq9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOlq9.;backend;raw;cd;DBG_GEN 5.2.7__pkcs11h_slotevent_checksumTHU  9pRWsS r UiJVunsigned longunsigned char/4unsigned>size_tJ__pkcs11h_slotevent_provideraU  p`provider%bslot crvj!d  @ @had_sleepF   last_checksum is_first_timeF   current_checksum iv!slots!slotnumv! ` s sinfo!voide!_pkcs11h_provider_tint?PKCS11H_BOOLcharlong Y| a Y! a _CK_VERSIONmajor#minor#  CK_C_Initialize  CK_C_Finalize  $ a CK_FLAGS  D a_CK_INFOLcryptokiVersion#manufacturerID#flags$#$libraryDescription3#(libraryVersion#HD CK_C_GetInfoz   CK_C_GetFunctionList  M--2MCK_C_GetSlotList @z a?   a_CK_SLOT_INFOhslotDescriptioni#manufacturerIDz#@flags$#`hardwareVersion#dfirmwareVersion#f ) )CK_C_GetSlotInfo  V a  g a x a  a  a_CK_TOKEN_INFOK labelE#manufacturerIDV# modelg#@serialNumberx#Pflags$#`ulMaxSessionCount #dulSessionCount #hulMaxRwSessionCount #lulRwSessionCount #pulMaxPinLen #tulMinPinLen #xulTotalPublicMemory #|ulFreePublicMemory #ulTotalPrivateMemory #ulFreePrivateMemory #hardwareVersion#firmwareVersion#utcTime# f  K P f CK_C_GetTokenInfo   --  CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize #ulMaxKeySize #flags$#  2     2 CK_C_GetMechanismInfo x  S  S X x CK_C_InitToken   S    CK_C_InitPIN   S  S    CK_C_SetPIN       F     -! F CK_C_OpenSession s  b s CK_C_CloseSession     CK_C_CloseAllSessions CK_SLOT_ID CK_STATE_CK_SESSION_INFO< slotID #state #flags$#ulDeviceError #   W  < A W CK_C_GetSessionInfo   S -v  CK_C_GetOperationState   S      CK_C_SetOperationState    S    CK_C_Login A  0 A CK_C_Logout CK_ATTRIBUTE_TYPE_CK_ATTRIBUTE  typeX #pValue #ulValueLen #p      -  CK_C_CreateObject     - CK_C_CopyObject M  7MCK_C_DestroyObject   -kCK_C_GetObjectSize     CK_C_GetAttributeValue     CK_C_SetAttributeValue C   (CCK_C_FindObjectsInit  - -cCK_C_FindObjects  CK_C_FindObjectsFinal CK_MECHANISM_TYPE_CK_MECHANISM ;mechanism#pParameter #ulParameterLen # [ ; @[CK_C_EncryptInit  S  S -wCK_C_Encrypt  S  S -CK_C_EncryptUpdate  S -CK_C_EncryptFinal J ; /JCK_C_DecryptInit  S  S -fCK_C_Decrypt  S  S -CK_C_DecryptUpdate  S -CK_C_DecryptFinal 4 ;4CK_C_DigestInit t S  S -OtCK_C_Digest  S  CK_C_DigestUpdate   CK_C_DigestKey  S -CK_C_DigestFinal E ; *ECK_C_SignInit  S  S -^CK_C_Sign  S  CK_C_SignUpdate  S -CK_C_SignFinal  ; CK_C_SignRecoverInit c S  S ->cCK_C_SignRecover  ; CK_C_VerifyInit  S  S  CK_C_Verify   S   CK_C_VerifyUpdate D S  )DCK_C_VerifyFinal { ; `{CK_C_VerifyRecoverInit  S  S -CK_C_VerifyRecover  S  S -CK_C_DigestEncryptUpdate N S  S -)NCK_C_DecryptDigestUpdate  S  S -rCK_C_SignEncryptUpdate  S  S -CK_C_DecryptVerifyUpdate ' ;  -'CK_C_GenerateKey w ;    --CwCK_C_GenerateKeyPair  ;  S -CK_C_WrapKey   ; S    - CK_C_UnwrapKey Q ;   -'QCK_C_DeriveKey  S  kCK_C_SeedRandom  S  CK_C_GenerateRandom  CK_C_GetFunctionStatus  CK_C_CancelFunction Y - >YCK_C_WaitForSlotEvent_CK_FUNCTION_LISTversion#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotListR#C_GetSlotInfo.#C_GetTokenInfok #C_GetMechanismList # C_GetMechanismInfo7 #$C_InitToken} #(C_InitPIN #,C_SetPIN #0C_OpenSessionK #4C_CloseSessionx #8C_CloseAllSessions #<C_GetSessionInfo\ #@C_GetOperationState #DC_SetOperationState #HC_Login #LC_LogoutF #PC_CreateObject #TC_CopyObject!#XC_DestroyObjectR#\C_GetObjectSize#`C_GetAttributeValue#dC_SetAttributeValue #hC_FindObjectsInitH#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInit`#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinal#C_DecryptInitO#C_Decrypt#C_DecryptUpdate#C_DecryptFinal#C_DigestInit9#C_Digesty#C_DigestUpdate#C_DigestKey#C_DigestFinal#C_SignInitJ#C_Sign#C_SignUpdate#C_SignFinal#C_SignRecoverInit##C_SignRecoverh#C_VerifyInit#C_Verify#C_VerifyUpdate#C_VerifyFinalI#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate #C_DecryptDigestUpdateS#C_SignEncryptUpdate#C_DecryptVerifyUpdate#C_GenerateKey,#C_GenerateKeyPair|#C_WrapKey#C_UnwrapKey#C_DeriveKeyV#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus#C_CancelFunction$#C_WaitForSlotEvent^#CK_FUNCTION_LIST_PTR>_pkcs11h_thread_t_pkcs11h_provider_sTe!next%#enabledF#referencei#manufacturerID|#handle #f#should_finalizeF#allow_protected_authF#cert_is_privateF#mask_private_mode>#mask_decrypt_mode>#slot_event_method>#slot_poll_interval>#slotevent_thread#  CK_RV CK_ULONG-CK_SLOT_ID_PTRCK_TOKEN_INFO__pkcs11h_slotevent_managerDU v" pCfirst_timeFE h  current_provider%\ tcurrent_provider%_pkcs11h_slotevent_initq Uj!"rvj!_pkcs11h_slotevent_notify Uj!_pkcs11h_slotevent_terminate_forceF Uj!_pkcs11h_slotevent_terminate Uj!e!-b#j!_pkcs11h_session_getSlotListj!#X#]#g#l#>Y##_pkcs11h_log###>#_pkcs11h_threading_threadJoinj!!$## 7$ &$7$_pkcs11h_threading_threadStartj!$!$<$A$uint8_t $$ aunsigned short$uint16_t%__pthread_cond_flag$#__pthread_cond_type$#__pthread_cond_magic$#unsigned long long%upad64_t_pthread_cond%__pthread_cond_flags$#__pthread_cond_data5%#D%pthread_cond_tG&__pthread_mutex_flag1$#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type$#__pthread_mutex_magic$# $X& a|&__pthread_mutex_padG&#>uint32_t&__pthread_ownerpid|&#__pthread_lockword|&#/'__pthread_mutex_lock64X&#__pthread_mutex_lock32&#__pthread_mutex_owner645%#_pthread_mutex'__pthread_mutex_flags%#__pthread_mutex_lock&#__pthread_mutex_data5%#/'pthread_mutex_t('cond%#mut'#''_pkcs11h_threading_condFreej!(''>_pkcs11h_threading_condWaitj!L((('_pkcs11h_threading_condInitj!(L('_pkcs11h_threading_condSignalj!((>_pkcs11h_threading_sleep(( Y(pkcs11h_getMessage()())")_pkcs11h_mem_freej!')J /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso../include/pkcs11-helper-1.0/usr/include/syspkcs11h-slotevent.cstdio_iso.h_pkcs11h-core.hpkcs11h-def.hpkcs11.h_pkcs11h-threading.htypes.hint_types.h  . =C kq x        , NN   y   @ G ii      $ +q}      // [ `sk   >> SY `h v~      66OO h      33 FlO~[tt     B//: BP c~l~t          / 6 f f l            + : A V o o           DD%. : ; @ ' ID I: ;  4I : ;  $> &III:  I  !I/ I  !I/  :  I8 ' ID I : . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID .?  : ;@ ' ID .? < ' ID .? < ' D  :  : .? < ' ID O)v"_pkcs11h_slotevent_init"_pkcs11h_slotevent_notify"_pkcs11h_slotevent_terminate_force%#_pkcs11h_slotevent_terminatepO)__pkcs11h_slotevent_checksum\__pkcs11h_slotevent_provider!__pkcs11h_slotevent_manager-O)Jsize_tFPKCS11H_BOOL_CK_VERSIONCK_C_InitializeCK_C_Finalize$CK_FLAGSD_CK_INFOCK_C_GetInfoCK_C_GetFunctionListRCK_C_GetSlotList_CK_SLOT_INFO.CK_C_GetSlotInfo_CK_TOKEN_INFOk CK_C_GetTokenInfo CK_C_GetMechanismList _CK_MECHANISM_INFO7 CK_C_GetMechanismInfo} CK_C_InitToken CK_C_InitPIN CK_C_SetPINK CK_C_OpenSessionx CK_C_CloseSession CK_C_CloseAllSessions CK_SLOT_ID CK_STATE _CK_SESSION_INFO\ CK_C_GetSessionInfo CK_C_GetOperationState CK_C_SetOperationState CK_C_LoginF CK_C_LogoutX CK_ATTRIBUTE_TYPEp _CK_ATTRIBUTE CK_C_CreateObject!CK_C_CopyObjectRCK_C_DestroyObjectCK_C_GetObjectSizeCK_C_GetAttributeValue CK_C_SetAttributeValueHCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM`CK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalOCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinal9CK_C_DigestInityCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalJCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinal#CK_C_SignRecoverInithCK_C_SignRecoverCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateICK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover CK_C_DigestEncryptUpdateSCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate,CK_C_GenerateKey|CK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKeyVCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatus$CK_C_CancelFunction^CK_C_WaitForSlotEventz_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t _pkcs11h_provider_s%_pkcs11h_provider_tj!CK_RVv!CK_ULONG!CK_SLOT_ID_PTR!CK_TOKEN_INFO$uint8_t$uint16_t$5%upad64_tD%_pthread_cond%pthread_cond_t%X&|&uint32_t&&/'_pthread_mutex'pthread_mutex_t'HP   !0123 4 5 6 7 89MZj )A]p x FP y  -@ GO H[ bj , ! (I0 7?Lo ( /7A HQVq  % ,?\f mu  ! (0\u     ! 7 G !X  _             $ $, W a  h p   "    #   } %)hlquz~!! """""""K"O""""""###H#%L# '/9FMYais{ '/7AKS[cmu}#-7AKS]eow!+5=GQ[emu#-5?JT^fpx",4A"HT^fnv#%(2<D4N  rrr"t+4?O)K>NW=FeGu{HtH1 Q` S0 W  0Yp  ^ $ ^ 9 ^ pkcs11h-core.o/ 1315536417 0 0 100644 53380 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.symtabpkcs11h-core.c__pkcs11h_threading_atfork_child__pkcs11h_threading_atfork_parent__pkcs11h_threading_atfork_prepare__pkcs11h_hooks_default_log__pkcs11h_hooks_default_token_prompt__pkcs11h_hooks_default_pin_prompt__pkcs11h_forkFixupBbss.bssDdata.dataDrodata.rodatapkcs11h_getMessagepkcs11h_getVersionpkcs11h_getFeaturespkcs11h_initialize_g_pkcs11h_loglevel_pkcs11h_logpkcs11h_terminate_pkcs11h_mem_malloc_g_pkcs11h_crypto_enginepkcs11h_engine_setCrypto_pkcs11h_threading_mutexInitpthread_atfork_g_pkcs11h_datapkcs11h_setLogHookpkcs11h_setTokenPromptHookpkcs11h_setPINPromptHook_pkcs11h_threading_mutexFree_pkcs11h_mem_freepkcs11h_removeProvider_pkcs11h_threading_mutexLockpkcs11h_token_freeTokenIdpkcs11h_certificate_freeCertificateIdList_pkcs11h_slotevent_terminatepkcs11h_setLogLevelpkcs11h_setForkMode__assertpkcs11h_getLogLevelpkcs11h_setSlotEventHook_pkcs11h_slotevent_initpkcs11h_setPINCachePeriodpkcs11h_setMaxLoginRetriespkcs11h_setProtectedAuthenticationpkcs11h_addProvidergetpidstrncpystrlendlopendlsymmemmovememsetgetenv_pkcs11h_util_fixupFixedStringdlclose_pkcs11h_threading_mutexRelease_pkcs11h_slotevent_notifystrcmp_pkcs11h_threading_sleeppkcs11h_forkFixuppkcs11h_plugAndPlaypkcs11h_logout_pkcs11h_session_logout_pkcs1h_threading_mutexLockAll_pkcs1h_threading_mutexReleaseAll_pkcs11h_slotevent_terminate_force.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenamesUqEEE$E8ELE`EvtEfEVEFE6E&EEE,E@ETEhE|EEEEvEfEV EF4E6PE&dEtEEEEEEE E<ETEvtEfEVEFE6E&EEEE4ELE`EEEEEvEfEV EF<E6XE&|EEEEEE0ETElEEEvEfEVEF E64E&PEhEEEEEEE E8ELEvUoP}2}} t뿐w$Bw$ 0}, }Bw$ !q@}BЃ_$- @A&Ap}Nb}6T}PQT`&B$9 }]}pq}`y$] }>}PG$q #}>}  $ $ }4}$ $ P}<0} !O0;`}P`p}<}plp} dhdE ,<L\l| , |l ,< ,<Ll\l|UE EÐUEEEEÐUEEEEErhdjhEPEEtoujjEEtIjPЃu%rhjE Ej8PEEtEEjhPEEtEEjPPEEtEhhh t EkE@4E@0E@E@EEjhjhjhEEtuEtEj8PEEtEjhPEEtEjPPEjEPEr&jEPjjPEPhjEEEÐU rhjkErh j@EEt"EjPE@EEuޡjhPjPPj8Prh$ j@ @ E@ @B Ej,PE@E@trh@ jE@tEj@PE@Ej@$PE@ Ej,PjEP@ 1rhp jrh j@@t:@E@@BjEP@uơj8PjhPjPPjPЃjhrh jEEÐUEÐU uhh h E E@uhh h E EUEEÐU uhh h E E@uhh h E EEEÐUuhh h E E@uhh h E EEuhh h E EUP U PEEÐUuhh h E E@uhh h E EEuhh h E EUP$U PEEÐUuh2h h E E@uh3h h E EEuh4h h E EUP,U PEEÐUuhAh h E E@uhBh h E EEuhCh h E EUP(U PEEÐU uhOh h E E@uhPh h E EUPEEÐU uh[h h E E@uh\h h E EUP4EEÐU uhgh h E E@uhhh h E EUP0EEÐUEEEEEDž|uhh h Džx Džx@uhh h Džt DžtE uhh h, Džp DžprrEt Džl DžlE tDžh DžhjhPEPlPE PEPEPh hD j(rjjE PEPh jj8P||t EhTEP||tUhEPBP UjE P!s E ljE PU DlUj lPP U(EU8EU@EUHEULEU <jE PЋE쉐,E싀,uDž|Eh ,PEjEPEP EuDž|Ej0PEЃ||tjjEP jh, EEtEЉE̋E싐0jEPBЃ||t(|=uDž| Eǀ4E싐0jEPB Ѓ||tUj EPP r EjjPEPhH jE@@uUPQDžh@hh@th@hh@u㋅hUPEDž|EtDE싀,t!Ej,PEǀ,jEPEEtj8PEr.j|PjP|PEPh jr,j|PjjP|Ph j|EEÐU EEEEEEEuh]h h E ErEPh j rEPh, j jhPEEtEjPPEEtEj8PEEtlE@ EEt"Ej,PE@EEuޡ@EEtAEPEPt)E@EEtEPEPu׋Eu EE@UBE苀4t"E苀0jj@ЃEǀ4E苀PtjhE苀PuE苀0t Eǀ0E苀,t!Ej,PEǀ,E@ EEt"Ej,PE@EEuދEtjhPEEtjPPEEtj8PEr&jEPjjPEPhL jEEEÐUEEÐUErEPh j @Ej8P@EEt1E@tE0jj@ЃE@EEuϡt E@EEt1E@tE0jj@ЃE@EEuϋEtj8Prh jEEÐUEErh jt @ur@ EEt]Ej,PEEu"jEPEEj,PEtEEE@EEur&jEPjjPEPh jEEEÐUE uhfh h E EEEti@t\E;wQ@ ujjEPE PEPj9( jjEPE PEPBPA ЃÐUÐUEuhh h, E ErjEPE PEPh8 jEEÐUEuhh h, E ErjEPE PEPh jEEÐUt"@ttÐUt"@ttÐUtD@t7tjj(jjÐUEEr3Et EEjjEPEPh j@j8PtnE@EEtSE@tE0jj@ЃtEtE@EEuEtj8PErh0jEECKR_OKCKR_CANCELCKR_HOST_MEMORYCKR_SLOT_ID_INVALIDCKR_GENERAL_ERRORCKR_FUNCTION_FAILEDCKR_ARGUMENTS_BADCKR_NO_EVENTCKR_NEED_TO_CREATE_THREADSCKR_CANT_LOCKCKR_ATTRIBUTE_READ_ONLYCKR_ATTRIBUTE_SENSITIVECKR_ATTRIBUTE_TYPE_INVALIDCKR_ATTRIBUTE_VALUE_INVALIDCKR_DATA_INVALIDCKR_DATA_LEN_RANGECKR_DEVICE_ERRORCKR_DEVICE_MEMORYCKR_DEVICE_REMOVEDCKR_ENCRYPTED_DATA_INVALIDCKR_ENCRYPTED_DATA_LEN_RANGECKR_FUNCTION_CANCELEDCKR_FUNCTION_NOT_PARALLELCKR_FUNCTION_NOT_SUPPORTEDCKR_KEY_HANDLE_INVALIDCKR_KEY_SIZE_RANGECKR_KEY_TYPE_INCONSISTENTCKR_KEY_NOT_NEEDEDCKR_KEY_CHANGEDCKR_KEY_NEEDEDCKR_KEY_INDIGESTIBLECKR_KEY_FUNCTION_NOT_PERMITTEDCKR_KEY_NOT_WRAPPABLECKR_KEY_UNEXTRACTABLECKR_MECHANISM_INVALIDCKR_MECHANISM_PARAM_INVALIDCKR_OBJECT_HANDLE_INVALIDCKR_OPERATION_ACTIVECKR_OPERATION_NOT_INITIALIZEDCKR_PIN_INCORRECTCKR_PIN_INVALIDCKR_PIN_LEN_RANGECKR_PIN_EXPIREDCKR_PIN_LOCKEDCKR_SESSION_CLOSEDCKR_SESSION_COUNTCKR_SESSION_HANDLE_INVALIDCKR_SESSION_PARALLEL_NOT_SUPPORTEDCKR_SESSION_READ_ONLYCKR_SESSION_EXISTSCKR_SESSION_READ_ONLY_EXISTSCKR_SESSION_READ_WRITE_SO_EXISTSCKR_SIGNATURE_INVALIDCKR_SIGNATURE_LEN_RANGECKR_TEMPLATE_INCOMPLETECKR_TEMPLATE_INCONSISTENTCKR_TOKEN_NOT_PRESENTCKR_TOKEN_NOT_RECOGNIZEDCKR_TOKEN_WRITE_PROTECTEDCKR_UNWRAPPING_KEY_HANDLE_INVALIDCKR_UNWRAPPING_KEY_SIZE_RANGECKR_UNWRAPPING_KEY_TYPE_INCONSISTENTCKR_USER_ALREADY_LOGGED_INCKR_USER_NOT_LOGGED_INCKR_USER_PIN_NOT_INITIALIZEDCKR_USER_TYPE_INVALIDCKR_USER_ANOTHER_ALREADY_LOGGED_INCKR_USER_TOO_MANY_TYPESCKR_WRAPPED_KEY_INVALIDCKR_WRAPPED_KEY_LEN_RANGECKR_WRAPPING_KEY_HANDLE_INVALIDCKR_WRAPPING_KEY_SIZE_RANGECKR_WRAPPING_KEY_TYPE_INCONSISTENTCKR_RANDOM_SEED_NOT_SUPPORTEDCKR_RANDOM_NO_RNGCKR_DOMAIN_PARAMS_INVALIDCKR_BUFFER_TOO_SMALLCKR_SAVED_STATE_INVALIDCKR_INFORMATION_SENSITIVECKR_STATE_UNSAVEABLECKR_CRYPTOKI_NOT_INITIALIZEDCKR_CRYPTOKI_ALREADY_INITIALIZEDCKR_MUTEX_BADCKR_MUTEX_NOT_LOCKEDCKR_FUNCTION_REJECTEDCKR_VENDOR_DEFINEDUnknown PKCS#11 errorPKCS#11: pkcs11h_initialize entryPKCS#11: Cannot initialize crypto enginePKCS#11: pkcs11h_initialize return rv=%lu-'%s'PKCS#11: pkcs11h_terminate entryPKCS#11: Removing providersPKCS#11: Releasing sessionsPKCS#11: Warning: Found session with referencesPKCS#11: Terminating sloteventPKCS#11: Marking as uninitializedPKCS#11: pkcs11h_terminate return_g_pkcs11h_data!=NULLpkcs11h-core.c_g_pkcs11h_data->initializedhook!=NULLprovider_location!=NULLPKCS#11: pkcs11h_addProvider entry version='%s', pid=%d, reference='%s', provider_location='%s', allow_protected_auth=%d, mask_private_mode=%08x, cert_is_private=%d1.09PKCS#11: Adding provider '%s'-'%s'C_GetFunctionListPKCS11H_INIT_ARGS_RESERVEDPKCS#11: pkcs11h_addProvider Provider '%s' manufacturerID '%s'PKCS#11: Provider '%s' added rv=%lu-'%s'PKCS#11: pkcs11h_addProvider return rv=%lu-'%s'reference!=NULLPKCS#11: pkcs11h_removeProvider entry reference='%s'PKCS#11: Removing provider '%s'PKCS#11: pkcs11h_removeProvider return rv=%lu-'%s'PKCS#11: pkcs11h_plugAndPlay entry pid=%dPKCS#11: pkcs11h_plugAndPlay returnPKCS#11: pkcs11h_logout entryPKCS#11: pkcs11h_logout return rv=%lu-'%s'format!=NULLtoken!=NULLPKCS#11: __pkcs11h_hooks_default_token_prompt global_data=%p, user_data=%p, display='%s'PKCS#11: __pkcs11h_hooks_default_pin_prompt global_data=%p, user_data=%p, display='%s'PKCS#11: __pkcs11h_forkFixup entry pid=%d, activate_slotevent=%dPKCS#11: __pkcs11h_forkFixup return%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21dApkcs11h-core.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-core.o pkcs11h-core.c -W0,-xp.XAKk4Dpg4XaOVv9.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOVv9.;backend;raw;cd;DBG_GEN 5.2.7intPKCS11H_BOOL _pkcs11h_provider_tcharlong! voidunsigned char _CK_VERSIOND major# minor#unsigned long Df UfCK_C_Initialize D CK_C_Finalize DCK_FLAGS  _CK_INFOL\ cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H Dr \arCK_C_GetInfo D CK_C_GetFunctionListD D   CK_C_GetSlotList@? # _CK_SLOT_INFOh slotDescription# manufacturerID#@ flags#` hardwareVersion#d firmwareVersion#f# D D CK_C_GetSlotInfo  !2 _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber#P flags#` ulMaxSessionCountD#d ulSessionCountD#h ulMaxRwSessionCountD#l ulRwSessionCountD#p ulMaxPinLenD#t ulMinPinLenD#x ulTotalPublicMemoryD#| ulFreePublicMemoryD# ulTotalPrivateMemoryD# ulFreePrivateMemoryD# hardwareVersion# firmwareVersion# utcTime!#2 D D CK_C_GetTokenInfo D6 D  6CK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySizeD# ulMaxKeySizeD# flags#W D D D CK_C_GetMechanismInfo D D  D CK_C_InitToken DE D  D*ECK_C_InitPIN D D  D  D]CK_C_SetPIN D D D  D D D   CK_C_OpenSession D D CK_C_CloseSession D9 D( 9 CK_C_CloseAllSessionsDCK_SLOT_IDDCK_STATE _CK_SESSION_INFO slotIDZ # statek # flags# ulDeviceErrorD# z D D   CK_C_GetSessionInfo D) D   ) CK_C_GetOperationState Dp D  D D DK p CK_C_SetOperationState D D D  D  CK_C_Login D D  CK_C_LogoutDCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE M type # pValue# ulValueLenD# Dr D M D R r CK_C_CreateObject D D D M D   CK_C_CopyObject D D D  CK_C_DestroyObject D D D   CK_C_GetObjectSize D\ D D M D< \ CK_C_GetAttributeValue D D D M D~  CK_C_SetAttributeValue D D M D  CK_C_FindObjectsInit D D  D   CK_C_FindObjects DH D7 H CK_C_FindObjectsFinalDCK_MECHANISM_TYPE _CK_MECHANISM  mechanismi # pParameter# ulParameterLenD# D D D  CK_C_EncryptInit D4 D  D  4CK_C_Encrypt Dq D  D  LqCK_C_EncryptUpdate D D  CK_C_EncryptFinal D D DCK_C_DecryptInit D# D  D  #CK_C_Decrypt D` D  D  ;`CK_C_DecryptUpdate D D  ~CK_C_DecryptFinal D D CK_C_DigestInit D  D  D   CK_C_Digest D> D  D#>CK_C_DigestUpdate Dq D D[qCK_C_DigestKey D D  CK_C_DigestFinal D D DCK_C_SignInit D D  D  CK_C_Sign DK D  D0KCK_C_SignUpdate D D  fCK_C_SignFinal D D DCK_C_SignRecoverInit D D  D  CK_C_SignRecover D2 D D2CK_C_VerifyInit Dr D  D  DMrCK_C_Verify D D  DCK_C_VerifyUpdate D D  DCK_C_VerifyFinal D D DCK_C_VerifyRecoverInit DZ D  D  5ZCK_C_VerifyRecover D D  D  xCK_C_DigestEncryptUpdate D D  D  CK_C_DecryptDigestUpdate D/ D  D   /CK_C_SignEncryptUpdate Dv D  D  QvCK_C_DecryptVerifyUpdate D D M D CK_C_GenerateKey D D M D M D  CK_C_GenerateKeyPair DY D D D  /YCK_C_WrapKey D D D  D M D qCK_C_UnwrapKey D D D M D CK_C_DeriveKey D D  DCK_C_SeedRandom DT D  D9TCK_C_GenerateRandom D DsCK_C_GetFunctionStatus D DCK_C_CancelFunction D D  CK_C_WaitForSlotEvent _CK_FUNCTION_LISTt version# C_Initializek# C_Finalize# C_GetInfow# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismList;# C_GetMechanismInfo#$ C_InitToken#( C_InitPINJ#, C_SetPIN#0 C_OpenSession#4 C_CloseSession #8 C_CloseAllSessions> #< C_GetSessionInfo #@ C_GetOperationState. #D C_SetOperationStateu #H C_Login #L C_Logout #P C_CreateObjectw #T C_CopyObject #X C_DestroyObject #\ C_GetObjectSize# #` C_GetAttributeValuea #d C_SetAttributeValue #h C_FindObjectsInit #l C_FindObjects #p C_FindObjectsFinalM #t C_EncryptInit #x C_Encrypt9#| C_EncryptUpdatev# C_EncryptFinal# C_DecryptInit# C_Decrypt(# C_DecryptUpdatee# C_DecryptFinal# C_DigestInit# C_Digest# C_DigestUpdateC# C_DigestKeyv# C_DigestFinal# C_SignInit# C_Sign # C_SignUpdateP# C_SignFinal# C_SignRecoverInit# C_SignRecover# C_VerifyInit7# C_Verifyw# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInit# C_VerifyRecover_# C_DigestEncryptUpdate# C_DecryptDigestUpdate# C_SignEncryptUpdate4# C_DecryptVerifyUpdate{# C_GenerateKey# C_GenerateKeyPair# C_WrapKey^# C_UnwrapKey# C_DeriveKey# C_SeedRandom## C_GenerateRandomY# C_GetFunctionStatus# C_CancelFunction# C_WaitForSlotEvent#CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t _pkcs11h_provider_sT  next# enabled# reference# manufacturerID# handle# ft# should_finalize# allow_protected_auth# cert_is_private# mask_private_mode# mask_decrypt_mode# slot_event_method# slot_poll_interval# slotevent_thread# %_pkcs11h_session_t:!K \m!~ pkcs11h_token_id_sd display'# manufacturerID:# modelK# serialNumber\# labelm#~pkcs11h_token_id_tDCK_SESSION_HANDLEtime_t!pkcs11h_certificate_id_list_tp CK_BYTE_PTRsize_t pkcs11h_certificate_id_s%Z%pkcs11h_hook_log_t% x%}%%pkcs11h_hook_slotevent_t % % % % %%%pkcs11h_hook_token_prompt_t& V& & & & & "& '&,&V&pkcs11h_hook_pin_prompt_t #' log_data# slotevent_data# token_prompt_data# pin_prompt_data# log_%# slotevent%# token_prompt%# pin_prompt[&#HX' global## session## cache##0!i'' __pthread_cond_flagX'# __pthread_cond_type!# __pthread_cond_magic!# _pthread_cond( __pthread_cond_flagsi'# __pthread_cond_data##'pthread_cond_t#pthread_mutex_t(a( cond(# mut*(#@(_pkcs11h_cond_t8( initialized# should_terminate# skip_event# cond_eventa(# thread#4 _pkcs11h_data_s) initialized# pin_cache_period# providers# sessions# hooks{&# allow_protected_auth#0 max_retries#4 mutexes#'#8 safefork# sloteventw(#()_pkcs11h_data_t_g_pkcs11h_data)_g_pkcs11h_loglevelpkcs11h_getMessageUY*T*j*rvT*DCK_RV^*pkcs11h_getVersion Upkcs11h_getFeatures U*featurespkcs11h_initialize U^*+has_mutex_globalhas_mutex_cachehas_mutex_sessionrv^*data)pkcs11h_terminatemU^*n, H H Hcurrent_provider d S Scurrentcurrentpkcs11h_setLogLevel}U,,flagspkcs11h_setForkModeU^*,,safepkcs11h_getLogLevelUpkcs11h_setLogHook U^*r-r-hook w-global_data  _%pkcs11h_setSlotEventHookbU^*--hook-global_data %pkcs11h_setPINPromptHook1AU^*<.<.hook/A.global_data0 [&pkcs11h_setTokenPromptHook@!U^*..hook>.global_data? %pkcs11h_setPINCachePeriodNU^*..pin_cache_periodMpkcs11h_setMaxLoginRetriesZbU^*P/P/max_retriesYpkcs11h_setProtectedAuthenticationfU^*//allow_protected_authepkcs11h_addProviderxU^*11referenceq1provider_locationr 1allow_protected_auths1mask_private_modet1slot_event_methodu1slot_poll_intervalv1cert_is_privatew mutex_lockedzmypid1pprovidergflinitargs,3pinitargsL3infok3rv^*dlast1111pid_t D2 112CK_CREATEMUTEX D02 202CK_DESTROYMUTEX D\2 K2\2CK_LOCKMUTEX D2 t22CK_UNLOCKMUTEX _CK_C_INITIALIZE_ARGS,3 CreateMutex 2# DestroyMutex52# LockMutexa2# UnlockMutex2# flags# pReserved#2CK_C_INITIALIZE_ARGS2G3CK_C_INITIALIZE_ARGS_PTRCK_INFOpkcs11h_removeProviderS,U^*o4y4referenceRcurrent_sessionUhas_mutex_globalVhas_mutex_cacheWhas_mutex_sessionXproviderZrv^*[o4t4pkcs11h_forkFixupBU^*pkcs11h_plugAndPlay U^*C5mypid1{x x x currentslot_event_activepkcs11h_logout*!U^*5current_session+rv^*, X! G! G!_rv^*<_pkcs11h_logcV"U>6>6flags`M6formata ...bargsR6dC6H6va_list __pkcs11h_hooks_default_loge"U66global_data6flags 6formatR6args66__pkcs11h_hooks_default_token_prompt"U77global_data7user_data 7token7retry__pkcs11h_hooks_default_pin_promptN#UC8C8global_dataH8user_data M8tokenR8retryW8pin\8pin_max& __pkcs11h_threading_atfork_prepare#U __pkcs11h_threading_atfork_parent#U __pkcs11h_threading_atfork_child#$U__pkcs11h_forkFixupp%U^*99activate_sloteventmutex_lockedmypid1$K%$K%$K%current !_pkcs11h_slotevent_terminate^*!_pkcs11h_slotevent_terminate_force^*!_pkcs11h_slotevent_notify^*!_pkcs11h_slotevent_init^* %"_pkcs11h_session_logout^*z: J:!getpid1!"pkcs11h_certificate_freeCertificateIdList^*: :&::#_pkcs11h_util_fixupFixedString; : : :;";';"_pkcs11h_mem_free^*V; ,;V;[;`;"_pkcs11h_mem_malloc^*; e; j;$_pkcs1h_threading_mutexReleaseAll$_pkcs1h_threading_mutexLockAll#;"_pkcs11h_threading_mutexFree^* < ;;"_pkcs11h_threading_mutexRelease^*X< <;"_pkcs11h_threading_mutexLock^*< X<;"_pkcs11h_threading_mutexInit^*< <#_pkcs11h_threading_sleep< <%<%<%<"pthread_atfork3= < < =~"pkcs11h_token_freeTokenId^*e= 3= {= e=j= = ===== = = = = ====& +> = = = = >>5>:>I>N> > 0> ?> D> S> X>]> pkcs11h_crypto_engine_s ?? global_data# initialize{=# uninitialize=# certificate_get_expiration=# certificate_get_dn+># certificate_is_issuer>#>??D?"pkcs11h_engine_setCrypto^*z? I?"dlclose? ?"dlsym?  ??"dlopen? ? "getpagesizes2@ ? "getpagesizes27@ ? 7@A@#__assertm@ <@ F@ m@"strncpy&@ & r@ @"strlen @ @@@"strcmp@ @ @"memsetA   A"memmoveFA  A FA&getenv& KAxB /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/sys/usr/include/isopkcs11h-core.c_pkcs11h-core.hpkcs11h-def.hpkcs11.h_pkcs11h-threading.hpkcs11h-core.htypes.hpkcs11h-certificate.hstdio_iso.hint_types.hstdarg_iso.hpkcs11h-engines.h  , < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |     & - 4 ; B I b b g              3 8 ? [ ` g                  ' 8 ? G X _ m t             ! * ~2 E X k             *4ES`d$}}       |  '9 Haa h s{      &_    + _ j u |    ?J U ]v   * 5 < V       6o     K V ] v     (/ 6 = G   r r      j x          * 0T \l     0 ZZ d q   ~    % ,4 G NS         7 TT qq           ~(3S \ |          .B OVa iz ~        !! ' 6=V^{{   ~~     ' 2 G ~P ~X  ` e x             !(! 9!A! G!qP!~X!!! ! !! !! " ","T"T" c" c" c" c" c" v" " " " " "" " " # # # # # # B#B# I# S# j# z# ## # # ## # # # $$ !$6$ =$E$$$$$ $ $$ $$ $%  % % %r!%~)%1% D% K%d%d% k%  DD%$> I: I !I/I !I/ I  :  I8 ' ID  I  :  :  : &I' D 4I?  : ;  .?  : ; @ ' ID I: ;  .?  : ; @ ' ID 4I : ;  .?  : ;@ ' ID 4I : ;  .?  : ;@ ' D I: ; .?  : ;@ ' ID . : ;@ ' D . : ;@ ' ID  . : ;@ ' D !.? < ' ID ".? < ' ID #.? < ' D $.? < ' D %' D &.? < ' ID NhA)_g_pkcs11h_data)_g_pkcs11h_loglevel*pkcs11h_getMessageo*pkcs11h_getVersion*pkcs11h_getFeatures*pkcs11h_initialize+pkcs11h_terminaten,pkcs11h_setLogLevel,pkcs11h_setForkMode,pkcs11h_getLogLevel-pkcs11h_setLogHook|-pkcs11h_setSlotEventHook-pkcs11h_setPINPromptHookF.pkcs11h_setTokenPromptHook.pkcs11h_setPINCachePeriod/pkcs11h_setMaxLoginRetriesU/pkcs11h_setProtectedAuthentication/pkcs11h_addProvidery3pkcs11h_removeProvider~4pkcs11h_forkFixup4pkcs11h_plugAndPlayC5pkcs11h_logout5_pkcs11h_loghA`6__pkcs11h_hooks_default_log6__pkcs11h_hooks_default_token_prompt7__pkcs11h_hooks_default_pin_prompta8__pkcs11h_threading_atfork_prepare8__pkcs11h_threading_atfork_parent8__pkcs11h_threading_atfork_child8__pkcs11h_forkFixup hAPKCS11H_BOOL_CK_VERSIONkCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOwCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotList#_CK_SLOT_INFOCK_C_GetSlotInfo2_CK_TOKEN_INFOCK_C_GetTokenInfo;CK_C_GetMechanismListW_CK_MECHANISM_INFOCK_C_GetMechanismInfoCK_C_InitTokenJCK_C_InitPINCK_C_SetPINCK_C_OpenSession CK_C_CloseSession> CK_C_CloseAllSessionsZ CK_SLOT_IDk CK_STATEz _CK_SESSION_INFO CK_C_GetSessionInfo. CK_C_GetOperationStateu CK_C_SetOperationState CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTEw CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObject# CK_C_GetObjectSizea CK_C_GetAttributeValue CK_C_SetAttributeValue CK_C_FindObjectsInit CK_C_FindObjectsM CK_C_FindObjectsFinali CK_MECHANISM_TYPE _CK_MECHANISM CK_C_EncryptInit9CK_C_EncryptvCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInit(CK_C_DecrypteCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitCK_C_DigestCCK_C_DigestUpdatevCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInit CK_C_SignPCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecover7CK_C_VerifyInitwCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInit_CK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdate4CK_C_SignEncryptUpdate{CK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPair^CK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKey#CK_C_SeedRandomYCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTtCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_t~pkcs11h_token_id_spkcs11h_token_id_t CK_SESSION_HANDLE, time_tp CK_BYTE_PTR size_t pkcs11h_certificate_id_sA!pkcs11h_certificate_id_t`!pkcs11h_certificate_id_list_s9 pkcs11h_certificate_id_list_t!uint16_t!uint8_t!""uint32_t"#upad64_t$##_pthread_mutex#_pkcs11h_mutex_t$_pkcs11h_session_s_pkcs11h_session_t_%pkcs11h_hook_log_t%pkcs11h_hook_slotevent_t%pkcs11h_hook_token_prompt_t[&pkcs11h_hook_pin_prompt_t{&#'i''_pthread_cond(pthread_cond_t*(pthread_mutex_t@(a(_pkcs11h_cond_tw((_pkcs11h_data_s)_pkcs11h_data_t^*CK_RV1pid_t 2CK_CREATEMUTEX52CK_DESTROYMUTEXa2CK_LOCKMUTEX2CK_UNLOCKMUTEX2_CK_C_INITIALIZE_ARGS,3CK_C_INITIALIZE_ARGSL3CK_C_INITIALIZE_ARGS_PTRk3CK_INFOR6va_list>pkcs11h_crypto_engine_s#S#1P#1`"1p"nV"ny0$@         !* <PiPp"4\Khp  '?0Ytp +ELe0wPM .>N^n~.>N^n~.>N^n~.>N^n~.>N^n~.>N^n{(        ! % ) - 1 5 9 = A E I M Q U Y ] a e i m q u y }                        J T [ c q  ! " ! !    #! #I #h m r w $ %  &  '  ( )1 )Q )f *u        %    % +3 %> ,F %Q ,Y %d ,l v }  % % % % ,   -#.>)L*T%eov~/%%%%%*%%)% )% )*!0!<%A*ISZw%2%2%'%6;@2`%rw|2%2% 29>C2`%k%%2%2#2@%K%V5w%2%22 %+%W%fkp2%22% %7%FKP2p%2%%2%"',2L%w%2%2%!:H%W\a2%22_dks%, ;<;<c;=>?e@otA)B1LSe%r%%C*5%@DOETg}28FMUcjr%},%,%,%,)%GFpFEG;CW%sD%D%D%DW:_mt|%%%,%% / %a 5f %q Dy       % % %!,!K2!DY!i!z!!!!!2!%!%!"%."%4"%"""2""""""2#4#;#T#%^#%k#%{#L#%#%#%#M#%#%#M#%$>$:F$t${$$%$%$%$,$%$%%N%52%%=%DL%V%]%)%*2*6*******+++++++++,, ,,,5,9,>,B,G,K,,0,,1, -3-6-&:--4-.(.g.'k..6.$/7(/~/8//9/y1}111113+34H44I4444445X5J\555555555667#7778888889 9y9}99999OVbjrz "*2:BJRZbjrz "*2:BJRZbjrz %5<HU\hp}",4<DLT\dlv~ "*4<FPXelx",4<FPX`jt~ (2:G0NZg1nz3&   4 * 2 : D L T c (j v ~      '        6     + 72 > F N V c 8j v ~    9              " * 2 < D N V ` h p x                    & 0 : D L V ^ h p x                   $ . 8 @ J R _ +f r z                ",4>HRZblt| &0:BJRZbjrzHI$,6@JRZdlv~J &0:BLT^hr| )0<DLT\fn{"*2AHT\dlv~  (2<FNV`jr4~ p%0,0,8,"8,T+:4.=?.=hAK~|WaesRuŗ ј  x(  0 0 л( @  T  i  pkcs11h-data.o/ 1315536417 0 0 100644 32948 ` ELF@}4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.symtabpkcs11h-data.c_pkcs11h_data_getObjectBbss.bssDdata.dataDrodata.rodatastrlen__assert_g_pkcs11h_loglevel_pkcs11h_log_pkcs11h_session_validate_pkcs11h_session_findObjects_pkcs11h_mem_freepkcs11h_getMessagepkcs11h_data_get_g_pkcs11h_data_pkcs11h_session_getSessionByTokenId_pkcs11h_threading_mutexLock_pkcs11h_session_getObjectAttributes_pkcs11h_session_loginmemmove_pkcs11h_threading_mutexRelease_pkcs11h_session_freeObjectAttributes_pkcs11h_session_releasepkcs11h_data_putpkcs11h_data_delpkcs11h_data_freeDataIdListpkcs11h_data_enumDataObjects_pkcs11h_mem_malloc.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenamesULEEԡEءEܡ EEEEE EEE؋E EE u EjE PEЋEЉEEEEu EjEPE̋ẺEEEEEujNhh E EE ujOhh E EEujPhh4 E ErEPEPE PEPh@jE@jEPEEtVjEPEPjEPEPEEt*Eău EEȋU@BEEȃtjEPr-jEPЋEj@PREPhjEEEÐUH$E(E,EEEEEEEEuhhh E E@uhhh E EEuhhh  E EEuhhh E EEuhhh4 E EE$uhhh0 E ErGE t E$@EEjEPE PEPEPEPEPEPhDj(E t E$@EԋE$@EPEPEEtsEj,PEEtQEE܃jEPEEuLjjEPEPEPEPEEu%jjjEPEPEPEEtEEE܃ujE؃uVr&jEPjjPEPhjEjEPEPjE PEPEEtTE܃ E$UPE t.E$@;Ev EPE$@PEPE P EEtEj,PEjEPEtjEPEr-jEPЋE$j@PREPhjEEEÐUpEEE0U|EEEEE t EEEEEEȋEEjEPE؋EEjEPEE EE$EEEEEEEuhFhh E E@uhGhh E EEuhHhh  E EEuhIhh E EEuhJhh4 Dž| Dž|E uhLhh< Džx DžxrNE t E$t DžtjtPE PEPEPEPEPEPhHj(EPEPEEtEj,PEEtEEjEPEEu4E@ 0UjjEPjEPBPATЃEEtEEEujEuVr&jEPjjPEPhjEjEPEPjE PEPEEtE#EEtEj,PEEtjEPEr&jEPjjPEPhjEEEpÐU0EEEEEEuhhh E E@uhhh E EEuhhh  E EEuhhh E EEuhhh4 E Er#EPEPEPEPEPh,jEPEPEEt0Ej,PEEtEEjEPEEuQjjEPEPEPEP;EEu*E@ 0UEPBPA\ЃEEtEEEujEuVr&jEPjjPEPhjEjEPEPjE PEPEEtEEtEj,PEEtjEPEr&jEPjjPEPhjEEEÐUEEuh/hh E E@uh0hh E ErEPhj Et]EEE@EE@tEjPE@tEjPjEPEurh0jEEÐU`EEEEEEuh`hh E E@uhahh E EEuhbhh` E Er=E t E EEPEPEPEPEPhxjE@EPEPEEtEj,PEEtEEExEȡ|E̡EЍEԉEEEjEPEEu'jEPEPjEPEPEEtEE;EEEEEEEEMUjjjEPPEPEEuWj EPEEu>UE@PBPEEuUE@PBPEEtoUEPEPBP EPUBUEPEPBP EPUBEUPEEEEjEPEtFE@tEjPE@tEjPjEPE@EE;EgEEEătjEPEuhEuVr&jEPjjPEPhjEjEPEPjE PEPEEt#E;EUPEEEtEj,PEEtjEPEEtjEPEr-jEPЋEj@PREPh(jEEEsession!=NULLpkcs11h-data.capplication!=NULLlabel!=NULLPKCS#11: _pkcs11h_data_getObject entry session=%p, application='%s', label='%s', p_handle=%pPKCS#11: _pkcs11h_data_getObject return rv=%lu-'%s', *p_handle=%08lx_g_pkcs11h_data!=NULL_g_pkcs11h_data->initializedtoken_id!=NULLp_blob_size!=NULLPKCS#11: pkcs11h_data_get entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08x, blob=%p, *p_blob_size=%08xPKCS#11: Read data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_get return rv=%lu-'%s', *p_blob_size=%08xblob!=NULLPKCS#11: pkcs11h_data_put entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08x, blob=%p, blob_size=%08xPKCS#11: Write data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_put return rv=%lu-'%s'PKCS#11: pkcs11h_data_del entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08xPKCS#11: Remove data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_del return rv=%lu-'%s'PKCS#11: pkcs11h_freeDataIdList entry token_id_list=%pPKCS#11: pkcs11h_token_freeDataIdList returnp_data_id_list!=NULLPKCS#11: pkcs11h_data_enumDataObjects entry token_id=%p, is_public=%d, user_data=%p, mask_prompt=%08x, p_data_id_list=%pPKCS#11: Enumerate data objects failed rv=%lu-'%s'PKCS#11: pkcs11h_data_enumDataObjects return rv=%lu-'%s', *p_data_id_list=%p%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/213pkcs11h-data.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-data.o pkcs11h-data.c -W0,-xp.XAKk4Dph4XaOF09.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaOF09.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_data_getObjectCgU*&session?9&application@ H&labelAM&p_handleBclassR&Dfilter{&Eobjects&Jobjects_found&KrvLC unsigned longCK_RV%&_pkcs11h_session_tintPKCS11H_BOOL' _pkcs11h_provider_tcharlong  !%  void %unsigned char _CK_VERSIONsmajor2#minor2#- sCK_C_Initialize- CK_C_Finalize 2  CK_FLAGS 2   _CK_INFOLzcryptokiVersionC#manufacturerID#flags#$libraryDescription#(libraryVersionC#H z CK_C_GetInfo 0  CK_C_GetFunctionList 2 CK_C_GetSlotList 2@0 ? 2 A  _CK_SLOT_INFOhslotDescription#manufacturerID0#@flags#`hardwareVersionC#dfirmwareVersionC#f A CK_C_GetSlotInfo 2   2   2.  2?  2P  _CK_TOKEN_INFOlabel#manufacturerID # model#@serialNumber.#Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersionC#firmwareVersionC#utcTime?# P CK_C_GetTokenInfoT 9TCK_C_GetMechanismList _CK_MECHANISM_INFO ulMinKeySize#ulMaxKeySize#flags# u CK_C_GetMechanismInfo 2.    . CK_C_InitTokenc   H c CK_C_InitPIN    {  CK_C_SetPIN -  -   CK_C_OpenSession)   ) CK_C_CloseSessionW  F W CK_C_CloseAllSessionsCK_SLOT_IDCK_STATE _CK_SESSION_INFO slotIDx #state #flags#ulDeviceError#    CK_C_GetSessionInfoG   , G CK_C_GetOperationState   i  CK_C_SetOperationState    CK_C_Login   CK_C_LogoutCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE k type #pValue-#ulValueLen# &  k  p  CK_C_CreateObject k   CK_C_CopyObject   CK_C_DestroyObject<  ! < CK_C_GetObjectSizez k  Z z CK_C_GetAttributeValue k   CK_C_SetAttributeValue k   CK_C_FindObjectsInit9 9CK_C_FindObjectsf UfCK_C_FindObjectsFinalCK_MECHANISM_TYPE _CK_MECHANISM mechanism#pParameter-#ulParameterLen#  CK_C_EncryptInitR   -RCK_C_Encrypt   jCK_C_EncryptUpdate  CK_C_EncryptFinal CK_C_DecryptInitA   ACK_C_Decrypt~   Y~CK_C_DecryptUpdate  CK_C_DecryptFinal CK_C_DigestInit*   *CK_C_Digest\  A\CK_C_DigestUpdate yCK_C_DigestKey  CK_C_DigestFinal CK_C_SignInit9   9CK_C_Signi  NiCK_C_SignUpdate  CK_C_SignFinal CK_C_SignRecoverInit   CK_C_SignRecoverP 5PCK_C_VerifyInit   kCK_C_Verify  CK_C_VerifyUpdate  CK_C_VerifyFinal1 1CK_C_VerifyRecoverInitx   SxCK_C_VerifyRecover   CK_C_DigestEncryptUpdate   CK_C_DecryptDigestUpdateM   (MCK_C_SignEncryptUpdate   oCK_C_DecryptVerifyUpdatek  CK_C_GenerateKey-k k  -CK_C_GenerateKeyPairw  MwCK_C_WrapKey k  CK_C_UnwrapKeyk  CK_C_DeriveKey<  !<CK_C_SeedRandomr  WrCK_C_GenerateRandom CK_C_GetFunctionStatus CK_C_CancelFunction- CK_C_WaitForSlotEvent_CK_FUNCTION_LISTversionC#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList#C_GetSlotInfo#C_GetTokenInfo!#C_GetMechanismListY# C_GetMechanismInfo#$C_InitToken3 #(C_InitPINh #,C_SetPIN #0C_OpenSession #4C_CloseSession. #8C_CloseAllSessions\ #<C_GetSessionInfo #@C_GetOperationStateL #DC_SetOperationState #HC_Login #LC_Logout #PC_CreateObject #TC_CopyObject #XC_DestroyObject #\C_GetObjectSizeA #`C_GetAttributeValue #dC_SetAttributeValue #hC_FindObjectsInit #lC_FindObjects>#pC_FindObjectsFinalk#tC_EncryptInit#xC_EncryptW#|C_EncryptUpdate#C_EncryptFinal#C_DecryptInit#C_DecryptF#C_DecryptUpdate#C_DecryptFinal#C_DigestInit#C_Digest/#C_DigestUpdatea#C_DigestKey#C_DigestFinal#C_SignInit#C_Sign>#C_SignUpdaten#C_SignFinal#C_SignRecoverInit#C_SignRecover#C_VerifyInitU#C_Verify#C_VerifyUpdate#C_VerifyFinal#C_VerifyRecoverInit6#C_VerifyRecover}#C_DigestEncryptUpdate#C_DecryptDigestUpdate #C_SignEncryptUpdateR#C_DecryptVerifyUpdate#C_GenerateKey#C_GenerateKeyPair2#C_WrapKey|#C_UnwrapKey#C_DeriveKey #C_SeedRandomA#C_GenerateRandomw#C_GetFunctionStatus#C_CancelFunction#C_WaitForSlotEvent#CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t_pkcs11h_provider_sT' next#enabled#reference#manufacturerID#handle-#f#should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread# ?  !P  a  r  !  pkcs11h_token_id_sd display, #manufacturerID? #modelP #serialNumbera #labelr #  pkcs11h_token_id_tCK_SESSION_HANDLEtime_t"pkcs11h_certificate_id_list_tu!  CK_BYTE_PTRsize_t pkcs11h_certificate_id_sA"token_id!#displayNameb!#attrCKA_IDu!#attrCKA_ID_size!#certificate_blob #certificate_blob_size!# !A"pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s"next>!#certificate_idF"# e"unsigned short"uint16_t 2uint8_t  #__pthread_mutex_flag1"#__pthread_mutex_flag2"#__pthread_mutex_ceiling"#__pthread_mutex_type"#__pthread_mutex_magic"# "#  #__pthread_mutex_pad##uint32_t  $__pthread_ownerpid##__pthread_lockword##unsigned long long$upad64_t  $__pthread_mutex_lock64##__pthread_mutex_lock32##__pthread_mutex_owner64$# _pthread_mutex $__pthread_mutex_flags"#__pthread_mutex_lock)$#__pthread_mutex_data$#$_pkcs11h_mutex_t _pkcs11h_session_sD%&next#reference_count#valid#provider# token_id!#session_handle!#allow_protected_auth_supported#pin_cache_period#pin_expire_time1!# cached_certs>!#$touch#(mutex$#, % /&4& >&C&CK_OBJECT_CLASS& CK_ATTRIBUTE h&$& CK_OBJECT_HANDLE &CK_ULONGpkcs11h_data_getUF(F(token_idK(is_public Z(applicationi(labeln(user_datas(mask_promptx(blob (p_blob_size$attrs(handle&rvmutex_lockedsessionop_succeedlogin_retryblob_size_max!C! P(U( _(d(- }( h& ( pkcs11h_data_put. U]*]*token_id&b*is_public' q*application(*label)*user_data**mask_prompt+*blob, *blob_size-$classR&/ck_true*0ck_false*1attrs*3handle&<rv=mutex_locked@sessionBop_succeedClogin_retryDC! g*l* v*{*- !2CK_BBOOL h&H* pkcs11h_data_delU++token_id+is_public  ,application,label ,user_data%,mask_promptmutex_lockedsessionop_succeedlogin_retryhandle&rv! ,, ,,-pkcs11h_data_freeDataIdList,6U,2-data_id_list+_id,-  x,:--pkcs11h_data_id_list_t  pkcs11h_data_id_list_s --next,#application,#label,# ,,pkcs11h_data_enumDataObjectsU7Uc/c/token_idPh/is_publicQ m/user_dataRr/mask_promptS|/p_data_id_listTmutex_lockedWsessionYdata_id_list,Zrv[op_succeed]login_retry^xxclassR&filter/objects&objects_found&i&8KKentry,attrs/C !- --w/ h& /  h&/ %&-_pkcs11h_session_login//////%&_pkcs11h_session_validate,0/%&_pkcs11h_session_release]0,0 %&b0_pkcs11h_session_getSessionByTokenId0]0g0%&& 00 0 _pkcs11h_session_findObjects100000k _pkcs11h_session_freeObjectAttributes]111%&k _pkcs11h_session_getObjectAttributes1]1b1g1l1 11_pkcs11h_log111 $1_pkcs11h_threading_mutexRelease+211_pkcs11h_threading_mutexLock`2+2% `2 e2j2_pkcs11h_mem_free2o2% 2 22_pkcs11h_mem_malloc222 2pkcs11h_getMessage232 3 3__assertI33"3 I3strlen!m3N3% m3memmove--r3 = /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-data.cpkcs11.h_pkcs11h-core.hpkcs11h-def.h_pkcs11h-threading.hpkcs11h-core.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.hpkcs11h-data.h      7 k          %\\ b v        3 g   T T \ e o   , 07 >F N ~~  U0      "0 8 F M     : A HO V ] d     ? v     ! ( D L S _           $ , 0 Z< +C K \ c k y            7 s    < < W \ x          N N U t |  V 2          S          v ** 1 FM T [ b i p    ^^ h       2 8K R  0 G X a g n u      G=    HH Onv x        ,, 2  DD%. : ; @ ' ID I: ;  4I : ;  D D $> I: I  !I/ I  !I/ I  :  I8 ' ID I :  :  : &I.?  : ; @ ' ID .?  : ;@ ' ID I: ; 4I : ;  .? < ' ID .? < ' D .? < ' ID 3&pkcs11h_data_get(pkcs11h_data_put*pkcs11h_data_del*,pkcs11h_data_freeDataIdList7-pkcs11h_data_enumDataObjects*3_pkcs11h_data_getObjectb 3CK_RVPKCS11H_BOOLC_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotListA_CK_SLOT_INFOCK_C_GetSlotInfoP_CK_TOKEN_INFO!CK_C_GetTokenInfoYCK_C_GetMechanismListu_CK_MECHANISM_INFOCK_C_GetMechanismInfo3 CK_C_InitTokenh CK_C_InitPIN CK_C_SetPIN CK_C_OpenSession. CK_C_CloseSession\ CK_C_CloseAllSessionsx CK_SLOT_ID CK_STATE _CK_SESSION_INFO CK_C_GetSessionInfoL CK_C_GetOperationState CK_C_SetOperationState CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE& _CK_ATTRIBUTE CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObjectA CK_C_GetObjectSize CK_C_GetAttributeValue CK_C_SetAttributeValue CK_C_FindObjectsInit>CK_C_FindObjectskCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISMCK_C_EncryptInitWCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitFCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInit/CK_C_DigestaCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInit>CK_C_SignnCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecoverUCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinal6CK_C_VerifyRecoverInit}CK_C_VerifyRecoverCK_C_DigestEncryptUpdate CK_C_DecryptDigestUpdateRCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKey2CK_C_GenerateKeyPair|CK_C_WrapKeyCK_C_UnwrapKey CK_C_DeriveKeyACK_C_SeedRandomwCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent0_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_t pkcs11h_token_id_s!pkcs11h_token_id_t!CK_SESSION_HANDLE1!time_tu!CK_BYTE_PTR!size_t!pkcs11h_certificate_id_sF"pkcs11h_certificate_id_te"pkcs11h_certificate_id_list_s>!pkcs11h_certificate_id_list_t"uint16_t"uint8_t"##uint32_t#$upad64_t)$$_pthread_mutex$_pkcs11h_mutex_t%_pkcs11h_session_s_pkcs11h_session_tR&CK_OBJECT_CLASSh&CK_ATTRIBUTE&CK_OBJECT_HANDLE&CK_ULONG*CK_BBOOL,pkcs11h_data_id_list_s,pkcs11h_data_id_list_tg     'A^pp "*Jp1 4&@&.6>FN{    B G Ll &6N Uw     A F Ku z     F MxO_p w !")#?$N^v } $et y ~      #M R W    2 f       U "r $          8 J  O  T           .  5 E f   / @  G j  " $    , 1 6Tf k p  #q      P Wq S[cks{)))!@!|#): Ad "$' %&&(%(*&*L,'P,,,,,,,Z-(^-z.~..... ///// /JQ]gow %-:AMU]gow#+5=GOWais} *%1=EMW_gqy %/7?IQ[emw& !)19AKU_gqy %-5?IQ^'eqy(#+3;CKS[cmu    ' / 7 ? G O Y a i q y                   % / 7 ? I Q Y c k s }      4` 7"tu+4x ?x 3KT W^eH`u`.af pj m s  th " (} 6 0} K 8} /119 1315536417 0 0 100644 13804 ` ELF24(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.symtabpkcs11h-serialization.cBbss.bssDdata.dataDrodata.rodatapkcs11h_token_serializeTokenId__assert_g_pkcs11h_loglevel_pkcs11h_log_pkcs11h_util_escapeStringpkcs11h_getMessagepkcs11h_token_deserializeTokenId_pkcs11h_mem_strdup_pkcs11h_token_newTokenIdstrchr_pkcs11h_util_unescapeStringstrncpy_pkcs11h_mem_freepkcs11h_token_freeTokenIdpkcs11h_certificate_serializeCertificateId_pkcs11h_util_binaryToHexpkcs11h_certificate_deserializeCertificateId_pkcs11h_certificate_newCertificateIdstrrchrstrlen_pkcs11h_mem_malloc_pkcs11h_util_hexToBinarypkcs11h_certificate_freeCertificateId.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_typenamesU0EE ujLh h E EEujMh h$ E EEEE!EE2EECEEr8Et E @EEjEPEPEPh4jEEE܋DtNUjjhEPDPjEEtEEЉEE@E܋E܋DuEE @;Es EEEE܋DtiE @+EEЋMMUjjhEPDPQEEtKEEЉEUM/D E@E܋E܋DuUMD E UPEr/jEPȋU EPBPQEPhjEEEÐUHEEEEEuhh h E EE uhh h E ErjjE PEPhjE@E PEPEȋEȃtyEЉEjEPEȋEȃtSEEE!E!EEE2EEECEE!EẼEẼt1j/EPEEu EUBEPEPj EȋEȃtE̋U;Tv E~E̋DEU̍EPEPDP EȋEȃtLE@EԋE@E̋Ẽ9EhCPEP EU؉PEEEЃtjEPE؃tjEPr&jEPjjPEPhXjEȉEEÐU$]EEEEE uh/h h E EEuh0h h E Er7Et E @EEjEPEPEPhjEtE @EEEE @E@PEPEP EEtEEDPEEtQE;Es EPUM/D ]]M+MUEjjPPQSEE UPEr/jEPȋU EPBPQEPhjEEE]ÐUEEEEEuhuh hl E EE uhvh h E EE@rjjE PEPhjE PEPEEt EEjEPEEtj/EPEEuEUBE@EEPEPEEtjEPEUEPPEEu*UEPEPP EEtEUPEEEtjEPEEtjEPr&jEPjjPEPhjEEEmax!=NULLpkcs11h-serialization.ctoken_id!=NULLPKCS#11: pkcs11h_token_serializeTokenId entry sz=%p, *max=%08x, token_id=%p\/"'%&#@!?$* <>{}[]()`|:;,.+-PKCS#11: pkcs11h_token_serializeTokenId return rv=%lu-'%s', *max=%08x, sz='%s'p_token_id!=NULLsz!=NULLPKCS#11: pkcs11h_token_deserializeTokenId entry p_token_id=%p, sz='%s'PKCS#11: pkcs11h_token_deserializeTokenId return rv=%lu-'%s'certificate_id!=NULLPKCS#11: pkcs11h_certificate_serializeCertificateId entry sz=%p, *max=%08x, certificate_id=%pPKCS#11: pkcs11h_certificate_serializeCertificateId return rv=%lu-'%s', *max=%08x, sz='%s'p_certificate_id!=NULLPKCS#11: pkcs11h_certificate_deserializeCertificateId entry p_certificate_id=%p, sz='%s'PKCS#11: pkcs11h_certificate_deserializeCertificateId return rv=%lu-'%s'%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21 pkcs11h-serialization.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-serialization.o pkcs11h-serialization.c -W0,-xp.XAKk4Dph4XaO149.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaO149.;backend;raw;cd;DBG_GEN 5.2.7pkcs11h_token_serializeTokenIdEZUszBmaxC token_idDsources(FrvGnHe9IP==taP\\{twunsigned longCK_RVchar unsignedsize_tlong ? $ !P $ a $ r $ ! $ pkcs11h_token_id_sddisplay,#manufacturerID?#modelP#serialNumbera#labelr#pkcs11h_token_id_t   #9 $intpkcs11h_token_deserializeTokenIdUllp_token_id{sz p#s#targetstoken_idp1_sze9rvoolp2 q v   $pkcs11h_certificate_serializeCertificateId(Ubbsz%max& scertificate_id'rv)saved_max*n+_max,  z $unsigned charzCK_BYTE_PTRpkcs11h_certificate_id_sOtoken_id#displayNameg#attrCKA_ID#attrCKA_ID_size#certificate_blob#certificate_blob_size#Opkcs11h_certificate_id_t Tpkcs11h_certificate_deserializeCertificateIdoQ UBGp_certificate_idmVszn certificate_idTprvqpr_szsO B L Q B_pkcs11h_certificate_newCertificateId[ _pkcs11h_token_newTokenIdpkcs11h_token_freeTokenId      _pkcs11h_util_unescapeStringZ     _ d  s x _pkcs11h_util_escapeString Z i n }   z _pkcs11h_util_binaryToHex       #  _pkcs11h_util_hexToBinaryi  ( - i n s } _pkcs11h_mem_strdup x  void   _pkcs11h_mem_free     _pkcs11h_mem_malloc>    C H _pkcs11h_logt > M pkcs11h_certificate_freeCertificateId t   pkcs11h_getMessage     __assert   9  strrchrG " 9 G strchrp L 9 p strncpy u   strlen  /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/isopkcs11h-serialization.cpkcs11.hstdio_iso.hpkcs11h-core.hpkcs11h-certificate.h ? s~       , 4 =tP\ g n t{     s OO U fm t {     5 <B [ `k r }              , 3 8Be hoR5       )0 7 > E{     3 8K S [ b ds       " W         (3 :U \w         F F L  DD%.?  : ; @ ' ID I: ;  4I : ;   $> I: I &I I  !I/ I  !I/  :  I8  .?  : ;@ ' ID I: ; 4I : ; .? < ' ID I.? < ' D .? < ' ID  pkcs11h_token_serializeTokenId@pkcs11h_token_deserializeTokenIdpkcs11h_certificate_serializeCertificateIdxpkcs11h_certificate_deserializeCertificateId CK_RVsize_tpkcs11h_token_id_spkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_sTpkcs11h_certificate_id_t     Z9L`m 8Qe  "J O T    'A H     #IS S X ]   !  0 5 :e j o "#Cc$%&'  ' 8  ?  [_dhmqfj+/48=A! %/7?IQYcmu}#+3;CKS]eow !)3;CMW_is} '19AIS[emu}!)3;EMU_goy   4A Q    " )+4? KMWh%Je&ul' ( *X ,  -  2 , 2 /144 1315536417 0 0 100644 28064 ` ELF0j4(.strtab.text.bss.data.rodata.rodata1.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.symtabpkcs11h-openssl.c__pkcs11h_openssl_get_openssl_session__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_dec__pkcs11h_openssl_enc__pkcs11h_openssl_finishBbss.bssDdata.dataDrodata.rodata__assertRSA_get_ex_data_g_pkcs11h_loglevel_pkcs11h_logpkcs11h_certificate_lockSessionpkcs11h_certificate_decryptAnypkcs11h_getMessagepkcs11h_certificate_releaseSessionRSA_sizepkcs11h_certificate_signAnyRSA_set_ex_datapkcs11h_openssl_freeSessionpkcs11h_openssl_getX509X509_newpkcs11h_certificate_getCertificateBlob_pkcs11h_mem_mallocd2i_X509X509_freepkcs11h_openssl_createSessionOpenSSL_add_all_digestsRSA_get_default_methodmemmove_pkcs11h_mem_freepkcs11h_openssl_getCleanupHookpkcs11h_openssl_setCleanupHookpkcs11h_certificate_freeCertificatepkcs11h_openssl_session_getRSApkcs11h_openssl_session_getX509X509_get_pubkeyEVP_PKEY_get1_RSARSA_set_methodRSA_freeEVP_PKEY_freeX509_dup.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenamesUEuhh h E EjEPEEuhh h E EEEEÐUjEP_EEuhh h E EE@Huhh h0 E EE@HEEÐU(jEPOEEEEEEE uhh hL E EEuhh hX E EEuhh h E Er#EPEPEPE PEPhdj2E7E +EpEpEHw$EpujEPEEtErhjEPEPEPE PEPEPEEt5r&jEPjjPEPhj EEtjEPEr&jEPjjPEPhjEuEEEE؉EE0HT<U$jEPEEEE uh(h hL E EEuh)h hX E EEuh*h h E Er#EPEPEPE PEPh<jEt EpjEPEjEPEEtErhjEPEPEPE PjEPEEt3r&jEPjjPEPhjEEtjEPEr&jEPjjPEPhjEuEEEE܉EEÐUjEPErEPhj jjEP E@DtUjEPBDЃjEPrhHjEEÐUEEEEEEuhh ht E ErEPhj EEu(rhjEEPjEP EEtEPEPEEtrEPEPEP EEtNEEEPEPEP u%rhjE EEtEtjEPEr*jEPjEPREPhjEEEÐUEErh\jjPEPt#rhjE~EUj8EPB P EU@ BDEP EPEPEP,E@0!EUPHE@EEujEPrEPhj EEEÐUEuhh h E EE@LEEÐUEuh(h h E EEU PLÐUEuh1h h E EE@h2h h E ErEjj@PEPh4jE@UHBE@uyE@LtUEj@HPBLЃE@tEj@PE@E@HtEj@HPE@HjEPrhjÐU EEEEEuh]h h E EE@th^h h E EEuh_h h E ErEPhj jEPEEurhjjEPEEurh<jE@t!rh\jjEPEEurhjRE PEPEPjEP E@U@BEP<@EPcertificate!=NULLfrom!=NULLto!=NULLPKCS#11: __pkcs11h_openssl_dec entered - flen=%d, from=%p, to=%p, rsa=%p, padding=%dPKCS#11: Performing decryptionPKCS#11: Cannot perform decryption %ld:'%s'PKCS#11: __pkcs11h_openssl_dec - return rv=%lu-'%s'PKCS#11: __pkcs11h_openssl_enc entered - flen=%d, from=%p, to=%p, rsa=%p, padding=%dPKCS#11: Performing signaturePKCS#11: Cannot perform signature %ld:'%s'PKCS#11: __pkcs11h_openssl_enc - return rv=%lu-'%s'PKCS#11: __pkcs11h_openssl_finish - entered rsa=%pPKCS#11: __pkcs11h_openssl_finish - returncertificate!=NULLPKCS#11: pkcs11h_openssl_getX509 - entry certificate=%pPKCS#11: Unable to allocate certificate objectPKCS#11: Unable to parse X.509 certificatePKCS#11: pkcs11h_openssl_getX509 - return rv=%ld-'%s', x509=%pPKCS#11: pkcs11h_openssl_createSession - entryPKCS#11: Cannot allocate memorypkcs11PKCS#11: pkcs11h_openssl_createSession - return openssl_session=%popenssl_session!=NULLopenssl_session->reference_count>0PKCS#11: pkcs11h_openssl_freeSession - entry openssl_session=%p, count=%dPKCS#11: pkcs11h_openssl_freeSession - return!openssl_session->initializedPKCS#11: pkcs11h_openssl_session_getRSA - entry openssl_session=%pPKCS#11: Cannot get certificate objectPKCS#11: Cannot get public keyPKCS#11: Invalid public key algorithmPKCS#11: Cannot get RSA keyPKCS#11: pkcs11h_openssl_session_getRSA - return rsa=%pPKCS#11: pkcs11h_openssl_session_getX509 - entry openssl_session=%pPKCS#11: Cannot duplicate certificate objectPKCS#11: pkcs11h_openssl_session_getX509 - return x509=%p%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21r(pkcs11h-openssl.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -o pkcs11h-openssl.o pkcs11h-openssl.c -W0,-xp.XAKk4Dph4XaOl99.Xa;g;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaOl99.;backend;raw;cd;DBG_GEN 5.2.7__pkcs11h_openssl_get_openssl_sessionU/^rsasession/intPKCS11H_BOOLunsigned charlongasn1_string_st length# type# data&# flags+# 3ASN1_INTEGERchar asn1_object_st sn# ln# nid# length# data&# flags#ASN1_OBJECTASN1_BOOLEAN3ASN1_STRING=3ASN1_ENUMERATEDT3ASN1_BIT_STRINGo3ASN1_OCTET_STRING3ASN1_PRINTABLESTRING3ASN1_T61STRING3ASN1_IA5STRING3ASN1_GENERALSTRING3ASN1_BMPSTRING3ASN1_UNIVERSALSTRING33ASN1_UTCTIMES3ASN1_GENERALIZEDTIMEk3ASN1_VISIBLESTRING3ASN1_UTF8STRING ASN1_VALUE_stASN1_VALUE y ptr%# boolean*# asn1_stringO# object # integer# enumeratedj# bit_string# octet_string# printablestring# t61string# ia5string# generalstring# bmpstring.# universalstringN# utctimef# generalizedtime# visiblestring# utf8string# setO# sequenceO# asn1_value#asn1_type_st type# value#yASN1_TYPEX509_algor_st algorithm # parameter#X509_ALGOR%   ' ,1 Q"6;stack_st num# data# sorted# num_alloc# compQ#VSTACKbuf_mem_st  length# data%# max#BUF_MEMunsigned longX509_name_sto entries# modified# bytes# hash # X509_NAMEo3ASN1_TIMEX509_val_st notBefore# notAfter#X509_VAL  ^ " & ' V , &1 [  ` &e    &  bignum_st  d # top# dmax# neg# flags#  bignum_ctx& X  ! 3 8 ] g q  BIGNUMbn_mont_ctx_stH ri# RR{ # N{ # Ni{ #, n0 #@ flags#D   b l v 3   (  > - C unsignedM rsa_stX pad# version+# meth# engine2# n7# e7# d7# p7# q7# dmp17#$ dmq17#( iqmp7#, ex_datao#0 references#8 flags#< _method_mod_n#@ _method_mod_p#D _method_mod_q#H bignum_data%#L blinding#P mt_blinding#T ^   H M &Y    ^  !  M &M   void& J . 3  o O T  cb_1J # cb_2o #bn_gencb_st verM # arg. # cbt #   O  rsa_meth_st8  name# rsa_pub_enc" # rsa_pub_decV # rsa_priv_enc # rsa_priv_dec # rsa_mod_expX # bn_mod_exp # init( # finish> # flags#$ app_data%#( rsa_sign #, rsa_verify! #0 rsa_keygen #4 RSA_METHOD  engine_stENGINE%{ crypto_ex_data_st o sk# dummy#<CRYPTO_EX_DATA BN_MONT_CTX bn_blinding_stBN_BLINDING  DSA_SIG_st  r7# s7# # M3 ((- R |W\       3       3    . g&3 O 8 }ldsa_method0 m name# dsa_do_sign## dsa_sign_setupM# dsa_do_verify|# dsa_mod_exp# bn_mod_exp# init# finish.# flags# app_data%#$ dsa_paramgeng#( dsa_keygen}#,DSA_METHOD m~dsa_stD  pad# version+# write_params# p7# q7# g7# pub_key7# priv_key7# kinv7# r7#$ flags#( method_mont_p#, references#0 ex_datao#4 meth#< engine2#@    &dh_stL  pad# version# p7# g7# length+# pub_key7# priv_key7# flags# method_mont_p# q7#$ j7#( seed&#, seedlen#0 counter7#4 references#8 ex_datao#< methR#D engine2#H     9 3    O> eT O jdh_method$ = name# generate_key# compute_key# bn_mod_exp9# initO# finishe# flags# app_data%# generate_params# DH_METHOD =M ec_key_stW  ptr%# rsa# dsa# dh# ecc#evp_pkey_st( type# save_type# references# pkeyh# save_parameters# attributes#EVP_PKEY(X509_pubkey_st  algor # public_key# pkey7#<X509_PUBKEYASN1_ENCODING_st  enc&# len+# modified#ASN1_ENCODINGx509_cinf_st4 version# serialNumber# signature # issuer# validity# subject# key# issuerUID# subjectUID# extensions#$ enc#(X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_stX509_POLICY_CACHE.+x509_cert_aux_st trust# reject# alias# keyid# other#.X509_CERT_AUXx509_st\ cert_info# sig_alg # signature# valid# references# name%# ex_datao# ex_pathlen+# ex_pcpathlen+#$ ex_flags #( ex_kusage #, ex_xkusage #0 ex_nscert #4 skid#8 akid#< policy_cache#@ sha1_hash#D aux#XX509  pkcs11h_certificate_s $pkcs11h_certificate_t $WEJWpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_sP* reference_count# initialized# x509# smart_rsa# orig_finish#D certificate)#H cleanup_hook\#L*pkcs11h_openssl_session_t^ RSA OY__pkcs11h_openssl_get_pkcs11h_certificate!U)rsasession/ O__pkcs11h_openssl_decUflenfrom &torsapaddingcertificate)session_lockedmechrvtlen O CK_MECHANISM_TYPE CK_RVM size_t__pkcs11h_openssl_enc!Uflenfrom &torsapadding certificate)#session_locked$rv%tlen& __pkcs11h_openssl_finishlsUQrsakopenssl_session/mpkcs11h_openssl_getX509KU  certificatecertificate_blob&certificate_blob_sizex509rvd2i1.  ) $ ) __pkcs11_openssl_d2i_tpkcs11h_openssl_createSessions U/  certificatedef openssl_session/ok )  pkcs11h_openssl_getCleanupHook U\E!E!openssl_session /pkcs11h_openssl_setCleanupHook' U!!openssl_session%!cleanup& / \pkcs11h_openssl_freeSession0g U""openssl_session/ /pkcs11h_openssl_session_getRSAW U""openssl_sessionVx509XrsaYpubkey7Zok[ /pkcs11h_openssl_session_getX509@U6#6#openssl_sessionx509ok / & ;#@# E#_pkcs11h_mem_freet#J# & t#y# ~# M _pkcs11h_mem_malloc### M # #_pkcs11h_log### $  # # M & Y pkcs11h_certificate_decryptAnyb$##$$ $$ $  l$ q$ M & Y pkcs11h_certificate_signAny$b$g$v${$$$ $pkcs11h_certificate_releaseSession %$ $pkcs11h_certificate_lockSessionE% % $ & Y pkcs11h_certificate_getCertificateBlob%E%J%O% pkcs11h_certificate_freeCertificate%%  %pkcs11h_getMessage% &%X509_get_pubkey71& & 6&;&d2i_X509k&1&@&+X509_free&k&X509_newX509_dup& ^ &RSA_get_ex_data. &&RSA_set_ex_data'. 'RSA_set_methodG'' G'RSA_get_default_methodL'RSA_free' ^ 'RSA_size''EVP_PKEY_free''EVP_PKEY_get1_RSA''OpenSSL_add_all_digests ( (__assertI(("( & I(memmove. . N(M X /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/local/include/openssl/usr/include/isopkcs11h-openssl.cpkcs11h-def.hx509.hasn1.hossl_typ.hstack.hbuffer.hevp.hrsa.hbn.hcrypto.hdsa.hdh.hpkcs11h-certificate.hpkcs11h-openssl.hpkcs11.hstdio_iso.h;L       6G N U \ b    ,, 0 7 < C H O T [ `tpx         '/ = Dtt      ? s         - ] `go }     $ / @N gg n          % , 4 Q Xs x          @@ F V] d }}            $ . 5 = K h h n       & [           # 4 > L e e v }      3 P P i            3 E R  a k r z                K hh       55 ;  DD%. : ; @ ' ID I: ;  4I : ;  $> I: I :  I8 &I <  :  ' ID I' D I !I/  . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID I.?  : ;@ ' D .? < ' ID .? < ' D .? < ' ID .? < ' D .? < ' ID v(Qpkcs11h_openssl_getX509J pkcs11h_openssl_createSession pkcs11h_openssl_getCleanupHookJ!pkcs11h_openssl_setCleanupHook!pkcs11h_openssl_freeSession "pkcs11h_openssl_session_getRSA"pkcs11h_openssl_session_getX509v(__pkcs11h_openssl_get_openssl_sessionc__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_dec__pkcs11h_openssl_enc__pkcs11h_openssl_finish-v(PKCS11H_BOOL3asn1_string_stASN1_INTEGERasn1_object_stASN1_OBJECT*ASN1_BOOLEAN=ASN1_STRINGTASN1_ENUMERATEDoASN1_BIT_STRINGASN1_OCTET_STRINGASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRING3ASN1_UNIVERSALSTRINGSASN1_UTCTIMEkASN1_GENERALIZEDTIMEASN1_VISIBLESTRINGASN1_UTF8STRINGASN1_VALUEyasn1_type_stASN1_TYPEX509_algor_stX509_ALGORVstack_stSTACKbuf_mem_stBUF_MEMX509_name_stoX509_NAMEASN1_TIMEX509_val_stX509_VAL bignum_st{ BIGNUM bn_mont_ctx_stt bn_gencb_st rsa_meth_stRSA_METHOD%ENGINE<crypto_ex_data_stoCRYPTO_EX_DATABN_MONT_CTXBN_BLINDING^ rsa_stDSA_SIG_stdsa_methodmDSA_METHODdsa_stdh_method=DH_METHODdh_sthevp_pkey_st(EVP_PKEY<X509_pubkey_stX509_PUBKEYASN1_ENCODING_stASN1_ENCODINGx509_cinf_stX509_CINFX509_POLICY_CACHE.x509_cert_aux_stX509_CERT_AUXx509_stX509)pkcs11h_certificate_t\pkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_s/pkcs11h_openssl_session_tORSACK_MECHANISM_TYPECK_RVsize_t. __pkcs11_openssl_d2i_t0f&.GHQR]^mnop q r s t uv%.JZ GvP#2:L Ik Fp @'5BZ_dpuz%l 6EUfm#MRWt .>OVv !G"OY`$ ?%a&%'( 29eov~*&+, D -L Z a       4 9 > l q v     (- 0E -M W ^          4 B I W 2j t {  3       4   , 5> ! 6 7 (   "',LZa}#8 ('.! o#sn )r !.!o!/s!!"!0"14""2"elx "*4<DLT\dlt| )0<DLV^fnx +2>FPX`hrz#"*4<FNV^fpz) $,4<DLT\dlv~./" $,4<DNV^fnv1"*4<DNV^hpx  2 $ , 4 < F P X ` j r z         4 @   " +45?5v(KE WwOe7Qu4RR1 X> [H a X b h j | j  (j07070100193ee5000081ed0000000000000000000000014e697e2100050f00000000b600010002ffffffffffffffff0000002d00000000root/usr/local/lib/libpkcs11-helper.so.1.0.0ELF4 4 (#"p p \\ !"$%)*+-/01589:<=ACEFHKNQRSUVWXZ\]^_`bcdfghijmoqrsuvwxz{|}  #&'(,.23467;>?@BDGIJLMOPTY[aeklnpty~|u d ` ` u + CL Z r }q 0d ) f   А  ( _ G0s% m@j3 ` p `tj pnd a %J 9eK WpP |0LR  x8  [U  hS 0 p U ]Y u  l 0 ^ 0\   @]U 3 e R b n 0b cA K   @ !(4BPM8 YM4 c0N: tN5 0O PO @Rm /S ^UH U5 0Vj W 0Y 2F d ^m     'Y P0 }0N E  +^ @,^ ;,~ \* x* @+  - . %N KO u`P 0Sp U   5 E P D o   pN{  Z Yl %  1 9 0E R ` f pa p(/ P1s       Zz  2 G O @J  z   &    &  . @  !7?F0 aqE p 5 P .EJ og  1 ? #l Ei|  E pXT %. TjD 2`V AO `??  pg 9PL f}" @G 02 Y `:  5K=a g  0  .:P f  O l a 6 P 5DLi n~`i @Zi  _y @ 2 M  a\j 0\ .libs/libpkcs11-helper.so.1.0.0crti.svalues-Xa.cpkcs11h-mem.cpkcs11h-sys.c__mytime__mysleep__mygettimeofdaypkcs11h-crypto.c__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitialize__pkcs11h_crypto_openssl_certificate_get_expiration__pkcs11h_crypto_openssl_certificate_get_dn__pkcs11h_crypto_openssl_certificate_is_issuer__pkcs11h_crypto_gnutls_initialize__pkcs11h_crypto_gnutls_uninitialize__pkcs11h_crypto_gnutls_certificate_get_expiration__pkcs11h_crypto_gnutls_certificate_get_dn__pkcs11h_crypto_gnutls_certificate_is_issuerpkcs11h-threading.c___pkcs11h_thread_startpkcs11h-util.cpkcs11h-session.cpkcs11h-token.cpkcs11h-certificate.c__pkcs11h_certificate_loadCertificate__pkcs11h_certificate_updateCertificateIdDescription__pkcs11h_certificate_getKeyAttributes__pkcs11h_certificate_doPrivateOperation__pkcs11h_certificate_splitCertificateIdListpkcs11h-slotevent.c__pkcs11h_slotevent_checksum__pkcs11h_slotevent_provider__pkcs11h_slotevent_managerpkcs11h-core.c__pkcs11h_threading_atfork_prepare__pkcs11h_threading_atfork_parent__pkcs11h_threading_atfork_child__pkcs11h_hooks_default_log__pkcs11h_hooks_default_token_prompt__pkcs11h_hooks_default_pin_prompt__pkcs11h_forkFixuppkcs11h-data.c_pkcs11h_data_getObjectpkcs11h-serialization.cpkcs11h-openssl.c__pkcs11h_openssl_get_openssl_session__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_dec__pkcs11h_openssl_enc__pkcs11h_openssl_finishcrtn.s_pkcs11h_session_release_pkcs11h_threading_threadStart_finipthread_cond_init_pkcs11h_session_validate_pkcs11h_session_logout_pkcs11h_mem_duplicate_pkcs11h_slotevent_init__pkcs11h_session_touch_pkcs11h_session_reset_pkcs11h_session_login_pkcs11h_log_pkcs11h_util_hexToBinary_pkcs11h_token_newTokenId_pkcs11h_token_getTokenIdpkcs11h_token_logout_pkcs1h_threading_mutexLockAll_pkcs11h_session_freeObjectAttributes_pkcs11h_util_escapeString_pkcs1h_threading_mutexReleaseAll_pkcs11h_slotevent_terminate_force_pkcs11h_session_findObjects_pkcs11h_session_getSlotList_pkcs11h_threading_condSignal_pkcs11h_mem_malloc_pkcs11h_threading_threadJoin_pkcs11h_session_getObjectAttributes_pkcs11h_mem_strdup_pkcs11h_certificate_resetSession_pkcs11h_session_getSessionByTokenId_pkcs11h_certificate_newCertificateId_pkcs11h_threading_sleep_pkcs11h_util_binaryToHex_pkcs11h_certificate_validateSession_pkcs11h_threading_mutexRelease_pkcs11h_certificate_enumSessionCertificates_pkcs11h_util_unescapeString_pkcs11h_slotevent_terminate_pkcs11h_threading_mutexFree_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexLock_pkcs11h_util_fixupFixedString_pkcs11h_threading_condWait_pkcs11h_threading_condInit_pkcs11h_threading_condFree_pkcs11h_mem_free_pkcs11h_session_getObjectById_pkcs11h_slotevent_notify_pkcs11h_certificate_isBetterCertificatepkcs11h_setMaxLoginRetriespkcs11h_certificate_unwrappkcs11h_token_serializeTokenIdpkcs11h_certificate_enumCertificateIdsstrncpypkcs11h_engine_setSystemdlclosepkcs11h_engine_setCryptopkcs11h_openssl_getCleanupHookpkcs11h_certificate_releaseSessiongnutls_x509_crt_get_dnstrrchrpkcs11h_certificate_signEVP_PKEY_freedlsympkcs11h_certificate_signAnypkcs11h_logoutpkcs11h_data_getpkcs11h_token_loginX509_verifypthread_atforklocaltimepkcs11h_getVersiongnutls_x509_crt_initpkcs11h_openssl_freeSessiongnutls_global_initgnutls_global_deinitmemmovepkcs11h_certificate_serializeCertificateIdpkcs11h_getMessageX509_dup__ctypegetenvpkcs11h_plugAndPlayX509_freepkcs11h_certificate_getCertificateBlobpkcs11h_getLogLevelpkcs11h_setProtectedAuthenticationX509_cmp_current_timeasctimedlopenpkcs11h_token_enumTokenIdsRSA_get_ex_dataX509_get_pubkeyX509_get_subject_namepkcs11h_certificate_decryptX509_NAME_onelinestrcmpRSA_sizepkcs11h_setForkModepkcs11h_data_putpkcs11h_certificate_setCertificateIdCertificateBlobpthread_mutex_initRSA_freepkcs11h_certificate_getCertificateIdpthread_mutex_unlockpkcs11h_certificate_duplicateCertificateIdpkcs11h_certificate_ensureKeyAccessmemsetEVP_PKEY_get1_RSApkcs11h_token_sameTokenIdX509_newpkcs11h_addProviderpkcs11h_certificate_getPromptMaskgnutls_x509_crt_get_expiration_timepthread_mutex_lockpthread_joinpthread_cond_signalmktimepkcs11h_initializegnutls_x509_crt_importpthread_cond_waitpkcs11h_certificate_signRecoverpkcs11h_openssl_createSessiongetpid__assertpkcs11h_certificate_freeCertificateIdpthread_mutex_trylock_PROCEDURE_LINKAGE_TABLE_pkcs11h_openssl_getX509sigaddsetpthread_sigmaskpkcs11h_certificate_freeCertificateIdList_endpkcs11h_data_enumDataObjectspkcs11h_setLogHookpkcs11h_certificate_freeCertificatepkcs11h_certificate_deserializeCertificateIdpthread_cond_timedwaitpkcs11h_removeProvidergmtimegnutls_x509_crt_verifypkcs11h_token_deserializeTokenIdpkcs11h_setLogLevel_edatapkcs11h_terminatepkcs11h_data_delRSA_set_methodX509_get_issuer_namepthread_mutex_destroypkcs11h_data_freeDataIdListpkcs11h_setSlotEventHookgnutls_x509_crt_deinitd2i_X509pkcs11h_setTokenPromptHookOpenSSL_add_all_digestssscanfpkcs11h_certificate_lockSessionRSA_get_default_methodstrchr_GLOBAL_OFFSET_TABLE_sigemptysetpkcs11h_certificate_enumTokenCertificateIdspkcs11h_setPINPromptHookpkcs11h_token_freeTokenIdListpkcs11h_certificate_getUserDatapkcs11h_certificate_decryptAnypkcs11h_token_freeTokenIdpkcs11h_certificate_creategnutls_x509_crt_get_activation_timepthread_createstrncatpkcs11h_certificate_setPromptMaskRSA_set_ex_data_etextpkcs11h_certificate_setUserDatastrlenpkcs11h_openssl_setCleanupHookpkcs11h_token_duplicateTokenIdpkcs11h_openssl_session_getX509X509_NAME_cmppkcs11h_setPINCachePeriodpkcs11h_token_ensureAccesspkcs11h_getFeatures_DYNAMICpkcs11h_certificate_ensureCertificateAccesspkcs11h_openssl_session_getRSAusleeplibpkcs11-helper.so.1libpthread.so.1SUNW_1.2SUNW_0.9libdl.so.1SUNW_0.7libc.so.1SUNW_1.1SYSVABI_1.3libcrypto.so.0.9.8libnsl.so.1libgnutls.so.26libtasn1.so.3libz.solibgcrypt.so.11libgpg-error.so.0libintl.so.8libiconv.so.2libsocket.so.1/usr/local/lib0'= (=  (= '= (= 7/789l;<=>?@ABCDn!)*$(-,.F+"& 0 y2 KLM#Npshv%OjQRS 1'}gw XYZUVW[]xi`abcdoĬȬԬج $04ptx|ĭȭ̭ԭܭ $(,048<@DHLTX`dhlptx|ĮȮ̮ЮԮخܮ $(,048<@DHLPT\`dhltx|įȯ̯Яԯدܯ  $(,04<@DHLPTX\`dptİȰ̰а԰ذ  $(,048<@DHLPTX\`dhlptx|ıȱ̱бԱرܱ  $(,048<@DHLPTX\`dhlptx|IJȲԲزܲ $(,08<@DLT\dhlptx|ijȳ̳гԳسܳ  $(,048<@DHLPX\`lpt|̴дԴش  (,08DHTX,04lptx$R(7Э!N̬=Ьܬ`:o@m (G_$(.,08-<h@DHLPTXI\}`Cdlh la6D9iPFJ]uTU~Eحps P?\{ 1Xxp)8Oh lKx/|;ܰW̲eвZnw ^4MH*PX"`jTd hbx,qz 2Ĵȴܴ%r[$4><g@VLSP h h$h0h4h 8h(<h0Hh8pXh@`\hHP`hP@dhX0hh` lhhphp|hxhhhhhhhhph`hPh@h0h hhhhhhhh h(h0h8ph@`hHPhP@hX0 h` ,hh8hp`hxhhh`hphhhhph`hPh@h0h h0h h$h8h@hHhPh `h(h0h8ph@`hHPhP@phX0h` hhhphxhhhhhhh0hpDh`hhPxh@h0h hhhU]ZUbEEu j@PR E EE ujAPR E EE@E vHjE PBЃEEUPEu EUE PjBP" EEE]ÐU]ZUaڋEu jWPR E EEj@PBЃE@EE]ÐU ]ZUs`jE Pdjj@PE PjEPEE]ÐU]ZU`EEu(juPR E EEt%Eu,jwPR E EE@E t E @EtEEPEP@EEt/E t E UPUEPEPBP; EEEE]ÐU ]ZU^jjEE]ÐU]ZU^jEP]ÐU ]ZUs^jEPEE]ÐU]ZU3^ڋEu@DjfPR E EjEPR EE]ÐU ]ZU]EE]ÐU]EE]ÐUP]u}ZUM]EE uLPhPR E EEuTPhPR E EE@"EEuE EEPEPEP uE@@@EE@@@EEEjEPjEPiE@ Zj$jEP E@@HЍME@@ʍD4EԋE@@HЍME@@ʍDωEЋE@@HЍME@@ʍDЉE̋E@@HЍME@@ʍDЉEȋE@@HЍME@@ ʍDЉEċE@@ HЍME@@ ʍDЉEjEPЋEP}jEPjPzjEPjP_+GUƉBEtjEPlEE@EE]u}ÐU ]ZUcZEE u LPhPR E EEutPh PR E EEwxPh PR E EUBEEuEE EEPEPEP u$jEP1ЋEPEPR. EtjEPEE@EE]ÐU,]؉uZUܸXEEEEE u Ph:PR E EEuPh;PRU E EEEtEEuE EEPEPEP uEEEPEPEPm uhjEPEEuJjEPjEPPVuEPEPuEEtjEPEEtjEPEEtjEPEEEE]؋uÐU ]ZUW:t E EE]ÐU ]ZUVEE]ÐU,]ZUظsVEjjEE uLPhPR E EEuTPhPR E EE@jEP4t EfE EEEjEPEP t>jEP EjEP EE;E|E;E EUPEtjEPEE@EE]ÐU(]ZUܸUEE u LPhPR E EEutPhPR} E EEwxPhPRE E EUBjEPt ETE EEEjEPEPy t-EEEPEPEP t UBEtjEP_EE@EE]ÐU,]ZUظsSEEEEE uPh7PR E EEuPh8PR E EjEP6tEjEPt EE EEEjEPEP t\EEEEjEPEP t4jEPjjEPEPtEuEEtjEPEEtjEPEEEE]ÐU]ZUQEEEu ElE u EWEu EaEu E/Eu EEu E%EEjEPR EEEE]ÐU ]uZUPڋU ȍ++jQF Ѓ]uÐU]ZUsPEEEjPEEtrEj EP EEtPjEPt E2EUPU@BUPEEEtjEPEtjP~EEEE]ÐU]ZUcOEjEP-t EEEE]ÐU]ZUOEjEPt EEEEE]ÐU]ZU츣NEEEjPtE@EEt-E@;Et"EEE@EEt E@;EuދEt6EuE@BEU@BjEPjEPEtjPEEE]ÐU]ZU츃MEEEjPtJE@EEtE@E@EEuEE@EEtKEtCEj@Pu E@EE@EEtEuE@EEt7E@uEj@P[E@E@EEuɋjPjh@jP EEEtjPE]U]ZUKEEjP#tHE@EEt,Ej@P_E@E@EEuԋEtjPE]ÐU]ZUKEEjPu)jEPuEjPt EEEEE]ÐU]ZUsJEEjP*u)jEPwuEjPt EEEEE]ÐU$]uZUIEE u-EPEPt EjEPBЃt EqE +U‰EU ȍ++E +ƉEUEPBPEPw t E EEEE]uÐU ]ZUHڋEjPEE]ÐU(]ZUܸHڋEEjEPEE}EPEPE@EE|jEPj UEj@PBЃEjEPEEE]ÐU]ZUGEEjEPEEtIEU PEUPjjEPRjEPt E EEEE]ÐU ]ZU#GڋEj@PE@EE]ÐU]ZUFڋE uj?PR E EEuj@PR\ E EEEEEPE PEPW UBEHEE;Er2E@ u&UBEHEE;Er E@ tڋ]ÐU0]ԉuZUظEڋBEBEBEEE ujWPRm E EEujXPR8 E EEu jYPR E EE@EE EE@E@E@;EE@Ћ$D%tzuE‹FDEƒuG(EPREP tEE%ЋEMHQE@U@BE@EE@EE@tE@;EEE@t E EE]ԋuÐU<]ZUCڋEuhPR E EEuhPRE E EEU E;s EEE;Esw0EE@%REEEEMUЈJ0EE@ȃREE؋EEM؋UȈDJE@EE;ErMUJEE]ÐU$]ZUcBEE EEEEE uhPR E EEu4hPR E EE@#E@\t7E@PEPhuEP$DEtxEU;Bv E\UBUxB<E@%RMA<E@RMAEEEE>Et,EU@;Bv E|E@UBE@EE@EE@EE@Et(EU@;Bv E*UBE@EE@EEUPEEEE]ÐU,]ZUظ#@EE EEEEE uhPR E EEu4hPR E EE@E@\uuEtaEU@;Bv EE@EE@EE㋓@EPREP E%UBE@EEEEEEEuDHjHPR E EEuLHjIPR E EEuPHjJPRl E ET@r;E t EEXEPEPEPEPRj E@E@E@u EE0U EPjRAЃ EEtEv$EPEPEEtTEv,E0U EPEPRAЃ EEt!EUPEEUPEEtjEPT@r/\jEPЋEj@PREPVjEEE]؋uÐU ]uZU;EEudHhPRu E EEuhHhPR= E ET@r!lEPEPE PEPRjE@ 0UjjEPEPE PBPAdЃEEtEE;EUMȋAuEUMȋAuUMAGUuUMȋAPFPEEtLE@EE;EHE@ 0UjjEPEPE PBPAdЃEEtT@r(pjEPjjPEPVj脶EEE]uU]ZUs9ڋEuhHhPR/ E ET@rtjjE PEPRjEE;E sbUMȋAt9UMjAPUMAE@EE;E rT@rxPj]EE]ÐU84Z<78EEEDžXDžTEudHhPR DžP DžPE u.Et&E u|HhPRz DžL DžLEuHhPR> DžH DžHEuHhPR DžD DžDT@r%EPEPEPE PEPRj足E@E@E@ 0UEPE PBPAlЃ TTtEE@ 0Ujj\Pjd`PBPApЃTTl\]Dž@X;`u&T@rPjֲ!`XE\P@PTTt3EtEPEP@P M@\P`PPk EtjEP%E@EE\EDž@E@ 0Ujj\Pjd`PBPApЃTTu\Et$E@ 0Ej@PBtЃEEUPEUPEEDžTEtjEPDEET@r5jTPЋEj@PRTPVjTEE84ÐU,]؉uZUܸ3EEEEEu HhPRp E EE uHhPR5 E ET@rjjE PEPRjE @@jPPtEEtE@@ EEtkEucUEPBPt2T@rPjfEEE@U@BE@EEtEtET@rPjjDEPEEtE@E@@U@BUEPBPEEtkEj,P&EEtKEE@@U@ B@UP E UPEEEt'EtEj,P}jEPEt@jPPET@r/jEPЋE j@PREPVj謭EEE]؋uÐU ]uZU踐0EEEudHhPR> E EE@}HhPR E ET@rEPRjɬ Ej,PXEEt&EE@~ E@UHBEEtEj,PlET@r(jEP3jjPEPVj/EEE]uÐUZ0/EEEEudHhKPR E EEuHhMPRm E ET@r!EPEPE PEPRj)E@T@rDEpEHEPE@CP2P!PPWjͪEE@@EEEEE@ tE@ ;EtCjjEPEPREPEEtDT@r0ujEPjPEPPWjEE;EEEE䋰0M؋U4PPFЃEEuEP4PEEtT@r8uԋMԋUԋECP2P!PPWjAUEPBP.tAEU؋EMAE@ u EUP E%ҋEPEEt]T@rO E䉅(}؋ujEPPEPP(P Pj|EԃtjEPE@E؋E;Es EkEtjEP5EE@EEt E~EuEuEET@rE@PRj轧 EE܋E@EE܉E؋pHUjjEPBPE PAPF(Ѓu EEEԉET@r-Et EEEPRj# Et EEBET@r/jEPЋEj@PREPVj迦EEEÐU<]ȉuZU̸)ڋBEBEBEB EBEBEE EEEEEEEEEuHhPR E EEuHh PR E ET@r%EPEPEPE PEPRjyE@jEPE؋E؃tTjEPEPjEPEPE؋E؃t*E܃u EEU@BEEtjEPT@r/jEPЋEj@PREPVj譤E؉EE]ȋuÐU]u}ZU'ET@rEPRjB EuEE@ tE@ @t E@u ET@r(u@jjPF PWjţE@ tKu@ЋV ;}6T@rPj膣jEPxEET@r( jEP6jjPEPVj2EEE]u}ÐU]ZU&ڋEudHhPRϽ E EE@uE@ @ЋЋE@M‰A EE]ÐU,Zg%EEEudHhPR E ET@rWE t E EEt EEEPEPEPEPEPRj藡jEPEEuyjjEPEPEPEPREEuREt E EE@ 0UEjPjjREPA4ЃEEtE tE@ <EEEu&ET@rPj裠E @U;P4 EE@@0t E@ 8tE@T@rE@PRj pHUhPEPBPEPAPF,Ѓt E ET@rEPRj詟 EtEjP衺EjEP`EEtE@ 0UjjEPEPjBPALЃEEt E=tEET@r( jEP߼jjPEPVj۞hjPչ Et"E=tE=tE=tAE@EEu@U;P4Eu E ET@r($jEP*jjPEPVj&EEEÐU ]ZU!ڋT@r(EPRj违 EtZE@tOE@ t:E@ 0Ej@PBPЃE@ 0Ej@PB8ЃE@T@r,Pj>EE]ÐU]ZU# ڋ@u04j@PRܷ E E@@u84jAPR蛷 E EEu<4jBPRd E ET@r@EPRj) jEPT@rDPjEE]ÐU$]uZUE@u04j[PR蒶 E E@@u84j\PRS E EEuH4j]PR E EE uL4j^PR E ET@rPjjE PEPRj衚E@jjhdE PjEPlEEtET@r/TjEP6ЋEj@PREPVj+EEE]uÐU]ZUڋEuX4hPRϴ E EE u\4hPR蕴 E EUE PP蕷uiUE !P!PuuIUE 2P2PUu)UE CPCP5u EEEEE]ÐU ]uZUEEud4hPR腳 E EE uh4hPRM E ET@rlE PRj E @jEPEEtUj EPCP UEj PP UEj@P!P UEjPP2P EhCPEP訵 E UPEEEtjEP;T@r/tjEP ЋE j@PREPVjEEE]uÐU$]uZUEE@u 04hPR舱 E E@@u 84hPRD E EEuh4hPR E ET@rxEPRjѕ E@hdEP趶EEtEUPEEEtjEPzET@r/|jEPAЋEj@PREPVj6EEE]uÐU ]uZU EEEEu<4hPRǯ E ET@rEPRj荔 EPEPEEtLEj,PEEt-EjEP:EEt EEtEj,P EEtjEP^ET@r(jEP赱jjPEPVj豓EEE]uÐU,]؉uZUܸEEEEEEu<4hZPR) E ET@r7E t E EjjEPEPRjϒEtjEP٭EEPEPEEt"Ej,P"EEtEjEPZEEjjEPjjEP#EEukjEP EEuRE t E EE@ 0UEjPjjREPA4ЃEEtGE@ 0UjjEPEPjBPALЃEEt E=tEEtEj,P[EEtjEPET@r(jEPjjPEPVjEEE]؋uÐU,]؉uZUܸEEE@u04hPR聫 E E@@u 84hPR@ E EEu<4hPR E ET@rjEPE PEPRjÏEPEPEEtZEj,P2EEt9EjjEPEPE PEPPEEtEEtEj,P3EEtjEPET@r(jEPݬjjPEPVjَEEE]؋uÐU]ZUڋEE@u04h PRs E E@@u 84h PR0 E ET@rEPRj EtKEEE@EE@tEj@PE@jEP誯EuT@rPj胍EE]ÐU($ Z,aEEE@u04h2PR E E@@u 84h3PR輧 E EE u4h4PR聧 E ET@rjjE PEPRjAE @@j8PEEtE@@EEEE@uajjEPEPREPEEtDT@r0ujEPrjPEPPWjiEE;EEjEP;EEuNE0MԋU܍0PPFЃEEu!EЃP0PEEtEЋUPEЉEEEEЃtjEPEE@EԋE;EBE܃tjEP|EE@EEsE.E@@ E܋E܃ EEEE؋E؃tCEԃu;U܋E؋@PBPtEE؋@E؋E؃tEԃtŋEԃEjEP貪EEu!U؋E܋@PBP衧EEtE؋UPE؉EEE؃t*E؋@tEj@PijEP;E܋@E܋E܃E UPEEEtjEPIEEt!@j8PӼEET@r,jEP藦jE PREPVj菈EEE($ ÐU$]u}ZU] EEujxPR E ET@r!EPEPE PEPRjчE tEuEjjEPE PEPBPA ЃuEjjEPEPEPBPA ЃuET@rKjEPjP~jEP΢jPcjjPVWjE;EET@r.Et EEEPRj视 EEE]u}U]uZU EEuhPRE E ET@rEPRj E@hEPEEt ET@r/jEP誣ЋEj@PREPVj蟅EEE]uÐUl]u}ZU}EEBE܋BEBEB EBEBEEEEEEEuhPR E EE@uhPR誟 E EE@EE@ET@rEPRjS E@ j,P߷EЋEЃtEEj@ PEЋEЃtUjEPEPjEPB PEЋEЃtEE;EpBEBEBEuM̋UjjjEPPF PEЋEЃt_T@rIEE@ @ E}̋ujEP7PEPPEPEPj'EHEPjjEPEPP PteE@ tE@j PŤEHEPjjEPEPP P臥EЋEЃt EjEPEЃtXE@E̋E;EE@ u E*Ej@PEЋEЃt EEtE@ j,PEE؃tjEPףT@r(jEP襟jjPEPVj衁EЉEE]u}ÐU]u}ZU}ڋEuhPR9 E ET@rEPRj EtJMUEjhPP PFPGЃu UBEjP踛uUh@PBP赞 }EjP{PFPGP賞 }uEjPLPFPGP脞 UT@rEPRj EE]u}ÐUd]uZUEEEEEu hPR` E ET@r EPRj% EjP贲EEt\EE@E7U44 |E@uE{E@ @ @tHE@ @ U@BT@rE@PRj\~ EMUjjjEPBPA PoEEtEEEȉEEԉEEEEtE@tEPEPEtE@tEPEPEtE@tEPEPEtE@tEPEPE@u Ec4T@rE@PRjA} EEjEPEubEuPT@r(jEPjjPEPVj|jjEP EEEtEEEtEjP菰ET@r( jEPVjjPEPVjR|EEE]uÐU]uZU0EEuhfPR E ET@r$EPRj{ Ej@ P EEtE@u EET@r((jEPBjjPEPVj>{EEE]uÐU,]؉uZUܸ EEEEuhPRǕ E ET@rQE t E EEt EE,jEPEPEPRjQzEu-E@ j,PխEEtEE@ @E@E tE@ @ <tTuEHEPEjPPPjF PEEu E E@RuEHEPjEPPPjF PEEu E E@Eu>E@MUEj@0PB4PjE PA PEEt]E uLE@uAuEHEPEjPPPjF PEEtEEtE@ j,P|ET@r(0jEPCjjPEPVj?xEEE]؋uÐU]|ZUE4BEBEBEEEEEE8BEBEBEċB EȋBE̋BEЋBEԋBE؋B E܍EEEE̍EE؋<BEBEBEEEEEEE@u@h-PR E E@@u Dh.PȒ E EEuh/PR葑 E EEuHh0PRY E EE uLh2PR! E ET@rIEt E @EEPjEPEPEPEPEPE PEPRju(Eu E @EjP2EEtGEE1E@njEPEEtE@ @ 0EP E@PEPBPЃ EE@ @ 0EP E@PEPBPЃ EE@ @ 0EP E@PEPBPЃ EtE@ @ 0EH UjjEPjEPEPEPBPEPAPЃ(E*EM wWUDU⋃T@rTEPRjs EtE@E @EE@ @ 0EP jEPEPEPEPBPЃEE@ @ 0EP jEPEPEPEPBPЃEE@ @ 0EP jEPEPEPEPBPЃEiEEE@ @ 0EP jjjEPEPBPAdЃEEE(EM wgUDUE UPT@rXEPRjr E=PuE t E@EtEt4"EuE t E@EEEt,E@ @ 0EP EPBPA\ЃEEE=PuEt E2uEEj@ PEuPT@r(\jEPqjjPEPVjmqEjjEP6 EEtEEtEjP"ET@r/`jEPЋE j@PREPVjpEEE]|J~:zU]ZU츣ڋ@u@h%PRY E E@@u Dh&PR E EEuh'PR݊ E ET@rdEPRjo EtEjP脑E tEj PcE@tEj@PgE@jEP/T@rhPjoEE]ÐU$]uZUE@u@hJPR蟉 E E@@u DhKPR\ E EEulhLPR! E EE uphMPR E ET@rtjjE PEPRjmE@jjhE PjEPtEEUE jjhd@PjBPDEEEpEHU E jjPPPPEEuEEpEHU E jjP PP P趏EEt ET@r/xjEP~ЋEj@PREPVjslEEE]uÐU$]uZUPE@u@hPR E E@@u DhPR輆 E EEuhPR聆 E EE u|hPRI E ET@rEPRjk E t Ej PEEt[MUjjEPE PP P諍EEt&jEPEEtET@r(jEPVjjPEPVjRjEEE]uÐU]ZU3ڋ@u@hPR E E@@u DhPR訄 E ET@rEPRjmi EtkE@ tEj@ P蹻E@ E@tEj@P裇E@EjPhjEPT@rPjhEE]ÐU]ZUE@u@hPRr E E@@u DhPR0 E EEuhPR E EE@ j,PlEEtEEEE]ÐU]ZU踣E@u@hPRR E E@@u DhPR E EEuhPRՁ E EE@ t"E@ j,P衚EEtEEEE]ÐU,]؉uZUܸpE@u@hPR E E@@u Dh PR܀ E EEuh!PR血 E EEuHh"PRi E EEuLh$PR1 E ET@rGEt E@EEjjEPEPEPEPE PEPRjd(Eu E@EPEPEPEPE PjEPsEEt ET@r/jEPJЋEj@PREPVj?dEEE]؋uÐU,]؉uZUܸ E@u@h]PR~ E E@@u Dh^PR~ E EEuh_PRQ~ E EEuHh`PR~ E EEuLhbPR} E ET@rGEt E@EEjjEPEPEPEPE PEPRjwb(Eu E@EPEPEPEPE PjEP#EEt ET@r/jEPЋEj@PREPVjaEEE]؋uÐU,]؉uZUܸE@u@hPR| E E@@u DhPR<| E EEuhPR| E EEuHhPR{ E EEuLhPR{ E ET@rGEt E@EEjjEPEPEPEPE PEPRj'`(Eu E@EPEPEPEPE PjEPEEt ET@r/jEP}ЋEj@PREPVj_EEE]؋uÐU,]؉uZUܸE@u@hPR/z E E@@u DhPRy E EEuhPRy E EEuHhPRyy E EEuLhPRAy E ET@rGEt E@EEjjEPEPEPEPE PEPRj](Eu E@EPEPEPEPE PjEPEEt ET@r/jEPZ{ЋEj@PREPVjO]EEE]؋uÐU0]ԉuZUظ0EE@u @hPRw E E@@u DhPRw E EEuhPRYw E EEuHhPR!w E EEuLhPRv E ET@rGEt E@EEjjEPEPEPEPE PEPRj[(E@u=T@rPjU[jEPEEtEuxE@tj(E_EPEPKEPEPEPEPE PEPgyc}tTtǐctht븋EutE@tf$E[EPEPG]EPEPEPEPE PEPxc}tTtːctht뼋Eu E ET@r/jEPwЋEj@PREPVjYEEE]ԋuÐU0]ԉuZUظEE@u @hPRht E E@@u DhPR$t E EEuhPRs E EEuHhPRs E EEuLhPRys E ET@rGEt E@EEjjEPEPEPEPE PEPRjX(E@u=T@rPjWjEPEEtEuxE@tj(E_EPEPKEPEPEPEPE PEPvc}tTtǐctht븋EutE@tf$E[EPEPG]EPEPEPEPE PEPuc}tTtːctht뼋Eu E ET@r/jEP~tЋEj@PREPVjsVEEE]ԋuÐU,]؉uZUܸPEEEE@u@hPRp E E@@u DhPRp E EEuhPRmp E ET@r%EPEPEPE PEPRj%UE@j8EP vEEtPEU P4EUP0E@EUPEjPUEEtEEPEPlsEEtEPE PBP袣EEtE@ j,PEEtEE@teE@ @uUE@ RPFE@ U@;B~2EP E@ R +PEHE@ щP UE@ RPEUPEEEtE@(EuEj@$PVE@$E@EEu‹@@EEIEE@ujjEPEPREP&|EEtEE;EjEEE0MЋU؍(PPFЃEEu9EP(PEEuEPEPEEtBE@(E̋@$u#EPE PEPn EEt EEt]T@rOPE}ЋujEP)TPEPPPPj6ẼtjEPmEEȃtjEPTEE@EЋE;EEEt>T@r0TujEPSjPEPPWjy5E؃tjEPcWEE@EE@@ EEEt#Et EE@(EE@$E؋E؃EjEPUEEu!UԋE؋@PBPSEEt)EԃtE@jEPdSEkEԋUPEԉEEE؋@E؋E؃kE@EEEPEPEP EEt EEtjEPREEt@jhPgET@r(XjEPQjjPEPVj3EEE ÐU]EEE;E s!EE@U‰EE@EE;E rߋEEE]ÐU$ Z4ڋEEET@r\EPRj2 E@uE}ELu EǀLE4u5T@r`EPRjN2 EǀHEHtEHT@rdEPRj1 @E@E0jEPjЃ EET@rhEPRj1 @jPfi@u6E@t+E0jEPjЃ EEuETtEHtEHdET@rlEPRj0 @E@E0jEPjЃ EEt EEuSEtHT@rhEPRj.0 E@jPhEjLP'bE@uBE@t7E0jEPjЃ EE@E4ETtiEHtEHGEET@rpEPRj5/ @E@EET@rtEPRj. jjEPEPREPsEEtEE;EE0MU܍8PPFЃuaj 8Pj XPjxP(jEPЋ(ƋMȉME@EE;EeEt EJE;EtAT@rhEPRj- @jPeEEEE܃tjEP{OEtM@uEjLPw_@uE@T@rxEPRj, EE$ ÐU]ZUӯET@r|Pj,T@rPjm,P@j@PB$ЃEu@ET@rPj,@@EEE@tNEPud EEt@ǀET@r(jEPFjjPEPVj(EEE]uÐU ]ZUڋT@rPjS(@t,@ǀ@jP`T@rPj'EE]ÐU ]ZUڋ@t,@jPa@ǀEE]U ]ZUsڋT@rPj3'@tJ@ǀt@t@jPbT@rPj&EE]ÐU]uZUsEf EV EF E6 E& E E EEEEEEEEEvEfEVEF E6E&EEE E$E(E,E0E4E8E<Ev@EfDEVHEFLE6PE&TEXE\E`EdEhElEpEtExE|EvEfEVEFE6E&EEEEEEEEEEEvEfEVEFE6E&EEEEEEEEEEEvEfEVEF E6E&EEuP}L}+} t뿐w UDUNw UDU0}> } Nq UDU !F@} NЃ3 UDU@Ap}[b}6T}PQT`N UD܋U}\}pOqV}LgHLG`5 UDU}I}#P? UD܋U}K}  K UDU⍎bW UDU }N}#/o UDU⍎ UDUP}<0} !0`}P`po}<}K+} E]u 0@P`p 0@ 0 0@P 0@P`pU]E E]ÐU ]EEEE]ÐU$]uZUEEEEET@rPj]E:hEPG<EEt@ujj:EEtkj@PBЃu-T@r(PjEEj8P>MEEtEEjhPMEEtEEjPPLEEtE,04PRQ79 t EwE@4E@0E@E@UPE<jP8DjP8LjP8EEtuEtEj8PMEEtEjhPMEEtEjPPMEjEP,;ET@r(TjEP6jjPEPVjEEE]uÐU]ZUӛڋT@rXPj@ET@r\Pj[@@EEt"EjP7E@EEuދ@jhPK@jPPK@j8P}KT@rdPj@@ @@ E􋃠@P @RP Ej,PKE@E@tT@rhPj:E@tEj@P>5E@Ej@$P5E@ Ej,PHKjEP8@@ T@rlPj.T@rpPj@@@@tI@@E􋃠@P@RPjEP)8@@u@j8PaJ@jhPJJ@jPP3Jj@PBЃjP7T@rtPjEE]ÐU]ZUsڋTUP]ÐU]ZU3ڋ@ux|hPR/ E E@@u |hPR/ E E@UEE]ÐU]ZUcڋ@ux|hPR/ E E@@u |hPR. E ET@EE]ÐU]ZU츣ڋ@ux|hPRY. E E@@u |hPR. E EEu|hPR- E E@UP @U PEE]ÐU]ZU츓ڋ@ux|hPRI- E E@@u |hPR- E EEu|hPR, E E@UP$@U PEE]ÐU]ZU츃ڋ@ux|h2PR9, E E@@u |h3PR+ E EEu|h4PR+ E E@UP,@U PEE]ÐU]ZUsڋ@ux|hAPR)+ E E@@u |hBPR* E EEu|hCPR* E E@UP(@U PEE]ÐU]ZUcڋ@ux|hOPR* E E@@u |hPPR) E E@UPEE]ÐU]ZU𸓑ڋ@ux|h[PRI) E E@@u |h\PR) E E@UP4EE]ÐU]ZUÐڋ@ux|hgPRy( E E@@u |hhPR8( E E@UP0EE]ÐU`\ZdE,EEEEDž|@u x|hPRl' Džx Džx@@u|hPR%' Džt DžtE u|hPR& Džp DžpT@rvEt Džl DžlE tDžh DžhjhPEPlPE PEPEPRQjM (T@rjjE PEPRj" @j8P>||t6EhTEP+||tUhEPBP( UjE P%!s E ljE P%U DlUj lPP( U(EU8EU@EUHEULEU <jE Pa)ЋE쉐,E싀,uDž| U싃P,P.)EjEPEP$ EuDž|Ej0PEЃ||tjjEPS$ jP(EEtEЉE̋E싐0jEPBЃ||t&|=u Dž| Eǀ4E싐0jEPB Ѓ||tUj EPPD T@r"EjjPEPRjOE@@@u@UPSDžh@@hh@th@hh@u㋅hUPEDž|EtDE싀,t!Ej,P5'Eǀ,jEPz)EEt@j8PT;ET@r0j|P%jP|PEPVj T@r.j|P$jjP|PVj|EE`\ÐU,]؉uZUܸEEEEEEEu|h]PRB! E ET@rEPRj  T@rEPRj @jhPo9EEtE@jPPA9EEtE@j8P9EEttE@@ EEt"Ej,P8E@EEuދ@@EEtAEPEP%#t)E@EEtEPEP"u׋Eu EE@UBE苀4t"E苀0jj@ЃEǀ4E苀Ptjh|6E苀PuE苀0t Eǀ0E苀,t!Ej,P#Eǀ,E@@ EEt"Ej,P7E@EEuދEt@jhP7EEt@jPPo7EEt@j8PI7ET@r(jEP!jjPEPVj EEE]؋uÐU]EE]ÐU]ZUӅ "ET@rEPRj @@@E@j8P5@@EEt1E@tE0jj@ЃE@EEuϋ@t Eg@@EEt1E@tE0jj@ЃE@EEuϋEt@j8Pn5T@rPjOEE]ÐU]uZU0EET@rPj@t@@uv@@ EEt]Ej,P74EEu"jEP~bEEj,Pj4EtEEE@EEuT@r(jEPjjPEPVjEEE]uÐU]ZUڋE u|hfPR E EEE@t{@@tjTU;Pw\@@ ujjEPE PEPj:/HPjjEPE PEPBPA Ѓ]ÐU]]ÐU]ZUڋEu|hPR E ET@rjEPE PEPRj{EE]ÐU]ZUcڋEu|hPR E ET@rjEPE PEPRjEE]ÐU]ZUÀڋ@t*@@t@t2]ÐU]ZUcڋ@t*@@t@tG4]ÐU]ZUڋ@tJ@@t93@tjjjjw]ÐU]ZU츃EET@r6Et EEjjEPEPRj@@@@j8Pq/txE@@EEtWE@tE0jj@Ѓ@tEtE@EEuEt@j8P3/ET@rPj EE]ÐUX]uZU}EBEԋBE؋BE܋B EBEBEBEBEB EEE؋E EE u EjE PEЋEЉEEEEu EjEPQE̋ẺEEEEEujNPR E EE ujOPR E EEujPPR E ET@r! EPEPE PEPRj=E@jEPTEEtTjEPEPjEPEPCEEt*Eău EEȋU@BEEȃtjEPT@r/jEP|ЋEj@PREPVjqEEE]uÐUT]uZUP{ڋBEBEBEEEEEEEE@uhPR E E@@u hPR| E EEu hPRA E EEuhPR  E EEuhPR E EE$u$hPR E ET@rIE t E$@EE(jEPE PEPEPEPEPEPRj-(E t E$@EԋE$@EPEP2EEEtyEj,P~)EEtUEE܃jEPQEEuLjjEPEPEPEPEEu%jjjEPEPEP<EEtEEE܃unE؃u\T@r(,jEPjjPEPVjEjEPEPjE PEPhREEtRE܃E$UPE t.E$@;Ev EPE$@PEPE P EEtEj,P`(EjEP=EtjEPFET@r/0jEPЋE$j@PREPVjEEE]uÐUlhZpvEEE4U44|EEEEE tEEEEEEȋEEjEPOE؋EEjEP8EE EE$EEEEEEE@uhFPR E E@@u hGPRt E EEu hHPR9 E EEuhIPR E EEuhJPR Dž| Dž|E u8hLPR Džx DžxT@rPE t E$t Džt<jtPE PEPEPEPEPEPRj(EPEP7@EEtEj,P$EEtEEjEP"LEEu4E@ 0UjjEPjEPBPATЃEEtEEEunEu\T@r(@jEPjjPEPVjEjEPEPjE PEPMEEtEEEtEj,P#EEtjEPBET@r(DjEPi jjPEPVjeEEElhÐU<]ȉuZU̸@rEEEEEE@u hPR E E@@u hPR E EEu hPRM E EEuhPR E EEuhPR E ET@r%HEPEPEPEPEPRjEPEP<EEt6Ej,P!EEtEEjEPHEEuQjjEPEPEPEPEEu*E@ 0UEPBPA\ЃEEtEEEunEu\T@r(LjEP jjPEPVj{EjEPEPjE PEPIEEt EEtEj,P& EEtjEPy>ET@r(PjEP jjPEPVjEEE]ȋuÐU]ZU踳nڋEE@uh/PRc E E@@u h0PR  E ET@rTEPRj Et]EEE@EE@tEjP E@tEjP jEP EuT@rXPjaEE]ÐUl]uZU@mEEEEEE@u h`PR E E@@u haPR E EEu\hbPRM E ET@r?E t E E`EPEPEPEPEPRjE@EPEP8EEtEj,PNEEtEEEdBEȋBE̋BEЍEԉEEEjEPCEEu'jEPEPjEPEP2EEtEE;EEhBEBEBEB EBEBEMUjjjEPPEP.EEuWj EPEEu>UE@PBPsEEuUE@PBPTEEtmUEPEPBP` EPUBUEPEPBP8 EPUBEUPEEEEjEP\0EtFE@tEjPE@tEjPjEP~E@EE;EoEEEătjEPGEupEu\T@r(ljEPjjPEPVjEjEPEPjE PEPnCEEt%E;EUPEEEtEj,PEEtjEP7EEtjEP ET@r/tjEP ЋEj@PREPVjEEE]uÐU<]ȉuZU̸hEE ux|jLPR E EEu|jMPR E EEEE!EE2EECEET@r:Et E @EEjEPEPEPRjEEE܋DtPU܋jjPEPDPjR$EEtEEЉEE@E܋E܋DuEE @;Es EEEE܋DtmE @+EEЋMMU܋jjPEPDPQ#EEtMEEЉEUM/D E@E܋E܋DuUMD E UPET@r1jEPȋU EPBPQEPVjzEEE]ȋuÐUT]uZU`eEEEEEu |hPR E EE u|hPR E ET@rjjE PEPRjE@E PEPEȋEȃtwEЉEjEPgJEȋEȃtSEEE!E!EEE2EEECEE!EẼEẼt1j/EPEEu EUBEPEPjj# EȋEȃtE̋U;Tv E~E̋DEU̍EPEPDP# EȋEȃtLE@EԋE@E̋Ẽ9EhCPEP; EU؉PEEEЃtjEPE؃tjEPT@r(jEPjjPEPVjEȉEE]uÐU,]؉uZUܸ`bEEEEE u x|h/PR E EEu|h0PR E ET@r9Et E @EEjEPEPEPRjiEtE @EEEE @E@PEPEP EEt}EEDPEEtQE;Es EPUM/D uuM+MUEjjPPQVEE UPET@r1jEPuȋU EPBPQEPVjhEEE]؋uÐU(]܉uZUP`EEEEEu |huPR E EE u|hvPR E EE@T@rjjE PEPRjkE PEPEEtEEjEPUEEtj/EPEEuEUBE@EEPEPEEtjEPEUEPPEEu*UEPEPP EEtEUPEEEtjEPEEtjEPT@r(jEPjjPEPVjEEE]܋uÐU]ZU]ڋEuhPR E EjEPJEEu hPR4 E EEEE]ÐU]ZU]jEPEEuhPR E EE@HuhPRr E EE@HEE]ÐU4]ЉuZUԸ@\jEPEEEEEEE u hPR E EEuhPR E EEuhPR] E ET@r%EPEPEPE PEPRj0EFE :Ep.Ep"EHwUԍDUEpujEPEEtET@rPjqEPEPEPE PEPEPaEEt;T@r(jEPjjPEPVj EEtjEPET@r(jEPjjPEPVjEu EE EE؉EE]Ћu$<H0U0]ԉuZUظpYjEPAEEEE uh(PR E EEuh)PR E EEuh*PR E ET@r%EPEPEPE PEPRjUEtEpjEPaEjEP EEtET@rPjEPEPEPE PjEP EEt9T@r( jEPjjPEPVjEEtjEPET@r(jEP1jjPEPVj-Eu EE EE܉EE]ԋuU]ZUWjEPET@rEPRj jjEP E@DtUjEPBDЃjEPT@r PjUEE]ÐU(]܉uZU@VEEEEEEu$hPR E ET@r(EPRj EEu.T@r,PjrEEPjEP EEtEPEP/EEtvEPEPEP{ EEtREEEPEPEPq u)T@r4PjEEEtEtjEPnET@r,8jEPUjEPREPVjMEEE]܋uÐU]ZU3TEET@r<PjMjPEPt*T@r@PjEEUj8EPB P EU@ BDHEP LEPPEPTEP,E@0!EUPHE@EEujEPT@rXEPRj EEE]ÐU]ZURڋEu\hPR E EE@LEE]ÐU ]ZUcRڋEu\h(PR E EEU PL]ÐU]ZUQڋEu\h1PR E EE@`h2PRr E ET@r dEjj@PEPRj.E@UHBE@uyE@LtUEj@HPBLЃE@tEj@PE@E@HtEj@HPEE@HjEPT@rlPj~]ÐU(]ZUܸsPEEEEEu\h]PR E EE@tph^PR E EEu\h_PR E ET@rtEPRje jEPEEu%T@r|Pj-jEP)EEu'T@rPjE@t%T@rPjjEPYEEu#T@rPjTE PEP(EPjEP E@U@BEP<@EPEEtjEPET@rEPRj EEE]ÐU]ZU踓MEEEu\hPRA E ET@rEPRj E@uGEj@HPEEUPEu"T@r|PjHEj@PEEu$T@rPj| EEuEtjEP2ET@rEPRj( EEE]UWVS[L[^_UWVS[K[^_p!=NULLpkcs11h-mem.cs!=0dest!=NULL!(mem_size!=0&&src==NULL)engine!=NULLpkcs11h-sys.cblob!=NULLpkcs11h-crypto.cexpiration!=NULLdn!=NULLdn_max>0issuer_blob!=NULLcert_blob!=NULLsource!=NULLpkcs11h-util.ctarget!=NULLp_target_size!=NULL%xmax!=NULL%08x0123456789ABCDEFprovider!=NULLpkcs11h-session.cpSlotList!=NULLpulCount!=NULLPKCS#11: _pkcs11h_session_getSlotList entry provider=%p, token_present=%d, pSlotList=%p, pulCount=%pPKCS#11: _pkcs11h_session_getSlotList return rv=%lu-'%s' *pulCount=%ldsession!=NULLattrs!=NULLPKCS#11: _pkcs11h_session_getObjectAttributes entry session=%p, object=%ld, attrs=%p, count=%uPKCS#11: _pkcs11h_session_getObjectAttributes return rv=%lu-'%s'PKCS#11: _pkcs11h_session_freeObjectAttributes entry attrs=%p, count=%uPKCS#11: _pkcs11h_session_freeObjectAttributes return!(filter==NULL && filter_attrs!=0) || filter!=NULLp_objects!=NULLp_objects_found!=NULLPKCS#11: _pkcs11h_session_findObjects entry session=%p, filter=%p, filter_attrs=%ld, p_objects=%p, p_objects_found=%pPKCS#11: Bad PKCS#11 C_FindObjects implementation detected, workaround appliedPKCS#11: _pkcs11h_session_findObjects return rv=%lu-'%s', *p_objects_found=%ldtoken_id!=NULLp_session!=NULLPKCS#11: _pkcs11h_session_getSessionByTokenId entry token_id=%p, p_session=%pPKCS#11: Using cached sessionPKCS#11: Creating a new sessionPKCS#11: _pkcs11h_session_getSessionByTokenId return rv=%lu-'%s', *p_session=%psession->reference_count>=0PKCS#11: _pkcs11h_session_release entry session=%pPKCS#11: _pkcs11h_session_release return rv=%lu-'%s'p_slot!=NULLPKCS#11: _pkcs11h_session_reset entry session=%p, user_data=%p, mask_prompt=%08x, p_slot=%pPKCS#11: _pkcs11h_session_reset Expected token manufacturerID='%s' model='%s', serialNumber='%s', label='%s'PKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: _pkcs11h_session_reset Found token manufacturerID='%s' model='%s', serialNumber='%s', label='%s'PKCS#11: Cannot get token information for provider '%s' slot %ld rv=%lu-'%s'PKCS#11: Calling token_prompt hook for '%s'PKCS#11: token_prompt returned %dPKCS#11: _pkcs11h_session_reset return rv=%lu-'%s', *p_slot=%ldid!=NULLp_handle!=NULLPKCS#11: _pkcs11h_session_getObjectById entry session=%p, class=%ld, id=%p, id_size=%08x, p_handle=%pPKCS#11: _pkcs11h_session_getObjectById return rv=%lu-'%s', *p_handle=%08lxPKCS#11: _pkcs11h_session_validate entry session=%pPKCS#11: _pkcs11h_session_validate session->pin_expire_time=%u, time=%uPKCS#11: Forcing logout due to pin timeoutPKCS#11: _pkcs11h_session_validate return rv=%lu-'%s'PKCS#11: _pkcs11h_session_login entry session=%p, is_publicOnly=%d, readonly=%d, user_data=%p, mask_prompt=%08xPKCS#11: Calling pin_prompt hook denied because of prompt maskPKCS#11: Calling pin_prompt hook for '%s'PKCS#11: pin_prompt hook return rv=%ldPKCS#11: _pkcs11h_session_login C_Login rv=%lu-'%s'PKCS#11: _pkcs11h_session_login return rv=%lu-'%s'PKCS#11: _pkcs11h_session_logout entry session=%pPKCS#11: _pkcs11h_session_logout return_g_pkcs11h_data!=NULLpkcs11h-token.c_g_pkcs11h_data->initializedtoken_id!=NULLPKCS#11: pkcs11h_token_freeTokenId entry certificate_id=%pPKCS#11: pkcs11h_token_freeTokenId returnto!=NULLfrom!=NULLPKCS#11: pkcs11h_token_duplicateTokenId entry to=%p form=%pPKCS#11: pkcs11h_token_duplicateTokenId return rv=%lu-'%s', *to=%pa!=NULLb!=NULLinfo!=NULLp_token_id!=NULLPKCS#11: _pkcs11h_token_getTokenId entry p_token_id=%pPKCS#11: _pkcs11h_token_getTokenId return rv=%lu-'%s', *p_token_id=%pPKCS#11: _pkcs11h_token_newTokenId entry p_token_id=%pPKCS#11: _pkcs11h_token_newTokenId return rv=%lu-'%s', *p_token_id=%pPKCS#11: pkcs11h_token_logout entry token_id=%p PKCS#11: pkcs11h_token_logout return rv=%lu-'%s'PKCS#11: pkcs11h_token_login entry token_id=%p, readonly=%d PKCS#11: pkcs11h_token_login return rv=%lu-'%s'PKCS#11: pkcs11h_token_ensureAccess entry token_id=%p, user_data=%p, mask_prompt=%08xPKCS#11: pkcs11h_token_ensureAccess return rv=%lu-'%s'PKCS#11: pkcs11h_token_freeTokenIdList entry token_id_list=%pPKCS#11: pkcs11h_token_freeTokenIdList returnp_token_id_list!=NULLPKCS#11: pkcs11h_token_enumTokenIds entry method=%u, p_token_id_list=%pPKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: pkcs11h_token_enumTokenIds return rv=%lu-'%s', *p_token_id_list=%pnewone!=NULLpkcs11h-certificate.cPKCS#11: _pkcs11h_certificate_isBetterCertificate entry current=%p, current_size=%08x, newone=%p, newone_size=%08xPKCS#11: _pkcs11h_certificate_isBetterCertificate notAfterCurrent='%s', notAfterNew='%s'PKCS#11: _pkcs11h_certificate_isBetterCertificate return is_better=%dp_certificate_id!=NULLPKCS#11: _pkcs11h_certificate_newCertificateId entry p_certificate_id=%pPKCS#11: _pkcs11h_certificate_newCertificateId return rv=%lu-'%s', *p_certificate_id=%pcertificate!=NULLcertificate->id!=NULLPKCS#11: __pkcs11h_certificate_loadCertificate entry certificate=%pPKCS#11: Cannot get object attribute for provider '%s' object %ld rv=%lu-'%s'PKCS#11: __pkcs11h_certificate_loadCertificate return rv=%lu-'%s'certificate_id!=NULLPKCS#11: __pkcs11h_certificate_updateCertificateIdDescription entry certificate_id=%pPKCS#11: __pkcs11h_certificate_updateCertificateIdDescription return displayName='%s'PKCS#11: __pkcs11h_certificate_getKeyAttributes entry certificate=%pPKCS#11: Key attributes enforced by provider (%08x)PKCS#11: Key attributes loaded (%08x)PKCS#11: Get private key attributes failed: %ld:'%s'PKCS#11: __pkcs11h_certificate_getKeyAttributes return rv=%lu-'%s'PKCS#11: _pkcs11h_certificate_validateSession entry certificate=%pPKCS#11: _pkcs11h_certificate_validateSession return rv=%lu-'%s'PKCS#11: _pkcs11h_certificate_resetSession entry certificate=%p, public_only=%d, session_mutex_locked=%dPKCS#11: _pkcs11h_certificate_resetSession return rv=%lu-'%s'_g_pkcs11h_data!=NULL_g_pkcs11h_data->initializedsource!=NULLp_target_size!=NULLPKCS#11: __pkcs11h_certificate_doPrivateOperation entry certificate=%p, op=%d, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: __pkcs11h_certificate_doPrivateOperation init rv=%ldPKCS#11: __pkcs11h_certificate_doPrivateOperation op rv=%ldPKCS#11: Private key operation failed rv=%lu-'%s'PKCS#11: __pkcs11h_certificate_doPrivateOperation return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_freeCertificateId entry certificate_id=%pPKCS#11: pkcs11h_certificate_freeCertificateId returnto!=NULLfrom!=NULLPKCS#11: pkcs11h_certificate_duplicateCertificateId entry to=%p form=%pPKCS#11: pkcs11h_certificate_duplicateCertificateId return rv=%lu-'%s', *to=%pblob!=NULLPKCS#11: pkcs11h_certificate_setCertificateIdCertificateBlob entry certificate_id=%pPKCS#11: pkcs11h_certificate_setCertificateIdCertificateBlob return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_freeCertificate entry certificate=%pPKCS#11: pkcs11h_certificate_freeCertificate returnPKCS#11: pkcs11h_certificate_sign entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_sign return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_signRecover entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_signRecover return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_decrypt entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_decrypt return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_unwrap entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_unwrap return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_signAny entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: Getting key attributesPKCS#11: pkcs11h_certificate_signAny return rv=%lu-'%s', *p_target_size=%08xPKCS#11: pkcs11h_certificate_decryptAny entry certificate=%p, mech_type=%ld, source=%p, source_size=%08x, target=%p, *p_target_size=%08xPKCS#11: pkcs11h_certificate_decryptAny return rv=%lu-'%s', *p_target_size=%08xp_certificate!=NULLPKCS#11: pkcs11h_certificate_create entry certificate_id=%p, user_data=%p, mask_prompt=%08x, pin_cache_period=%d, p_certificate=%pPKCS#11: pkcs11h_certificate_create return rv=%lu-'%s' *p_certificate=%pPKCS#11: pkcs11h_certificate_getCertificateId entry certificate=%p, certificate_id=%pPKCS#11: pkcs11h_certificate_getCertificateId return rv=%lu-'%s'p_certificate_blob_size!=NULLPKCS#11: pkcs11h_certificate_getCertificateBlob entry certificate=%p, certificate_blob=%p, *p_certificate_blob_size=%08xPKCS#11: pkcs11h_certificate_getCertificateBlob return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureCertificateAccess entry certificate=%pPKCS#11: Cannot access existing object rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureCertificateAccess return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_ensureKeyAccess entry certificate=%pPKCS#11: pkcs11h_certificate_ensureKeyAccess return rv=%lu-'%s'session!=NULLPKCS#11: _pkcs11h_certificate_enumSessionCertificates entry session=%p, user_data=%p, mask_prompt=%08xPKCS#11: Get certificate attributes failed: %ld:'%s'PKCS#11: _pkcs11h_certificate_enumSessionCertificates return rv=%lu-'%s'p_cert_id_end_list!=NULLPKCS#11: __pkcs11h_certificate_splitCertificateIdList entry cert_id_all=%p, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: __pkcs11h_certificate_splitCertificateIdList return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_freeCertificateIdList entry cert_id_list=%pPKCS#11: pkcs11h_certificate_freeCertificateIdList returntoken_id!=NULLPKCS#11: pkcs11h_certificate_enumTokenCertificateIds entry token_id=%p, method=%u, user_data=%p, mask_prompt=%08x, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: pkcs11h_certificate_enumTokenCertificateIds return rv=%lu-'%s'PKCS#11: pkcs11h_certificate_enumCertificateIds entry method=%u, mask_prompt=%08x, p_cert_id_issuers_list=%p, p_cert_id_end_list=%pPKCS#11: Cannot get token information for provider '%s' slot %ld rv=%lu-'%s'PKCS#11: Cannot get slot list for provider '%s' rv=%lu-'%s'PKCS#11: pkcs11h_certificate_enumCertificateIds return rv=%lu-'%s' on UNKNOWNPKCS#11: __pkcs11h_slotevent_provider provider='%s' entryPKCS#11: Setup slotevent provider='%s' mode hardset to pollPKCS#11: Setup slotevent provider='%s' checking triggerPKCS#11: Slotevent provider='%s' eventPKCS#11: Setup slotevent provider='%s' checking pollPKCS#11: Setup slotevent provider='%s' checking fetchPKCS#11: Slotevent provider='%s' pollPKCS#11: __pkcs11h_slotevent_provider provider='%s' returnPKCS#11: __pkcs11h_slotevent_manager entryPKCS#11: Calling slotevent hookPKCS#11: __pkcs11h_slotevent_manager examine provider listPKCS#11: __pkcs11h_slotevent_manager found enabled provider without threadPKCS#11: __pkcs11h_slotevent_manager found disabled provider with threadPKCS#11: __pkcs11h_slotevent_manager waiting for sloteventPKCS#11: Slotevent skipping eventPKCS#11: __pkcs11h_slotevent_manager joining threadsPKCS#11: __pkcs11h_slotevent_manager returnPKCS#11: _pkcs11h_slotevent_init entryPKCS#11: _pkcs11h_slotevent_init return rv=%lu-'%s'PKCS#11: _pkcs11h_slotevent_notify entryPKCS#11: _pkcs11h_slotevent_notify returnPKCS#11: _pkcs11h_slotevent_terminate entryPKCS#11: _pkcs11h_slotevent_terminate returnCKR_OKCKR_CANCELCKR_HOST_MEMORYCKR_SLOT_ID_INVALIDCKR_GENERAL_ERRORCKR_FUNCTION_FAILEDCKR_ARGUMENTS_BADCKR_NO_EVENTCKR_NEED_TO_CREATE_THREADSCKR_CANT_LOCKCKR_ATTRIBUTE_READ_ONLYCKR_ATTRIBUTE_SENSITIVECKR_ATTRIBUTE_TYPE_INVALIDCKR_ATTRIBUTE_VALUE_INVALIDCKR_DATA_INVALIDCKR_DATA_LEN_RANGECKR_DEVICE_ERRORCKR_DEVICE_MEMORYCKR_DEVICE_REMOVEDCKR_ENCRYPTED_DATA_INVALIDCKR_ENCRYPTED_DATA_LEN_RANGECKR_FUNCTION_CANCELEDCKR_FUNCTION_NOT_PARALLELCKR_FUNCTION_NOT_SUPPORTEDCKR_KEY_HANDLE_INVALIDCKR_KEY_SIZE_RANGECKR_KEY_TYPE_INCONSISTENTCKR_KEY_NOT_NEEDEDCKR_KEY_CHANGEDCKR_KEY_NEEDEDCKR_KEY_INDIGESTIBLECKR_KEY_FUNCTION_NOT_PERMITTEDCKR_KEY_NOT_WRAPPABLECKR_KEY_UNEXTRACTABLECKR_MECHANISM_INVALIDCKR_MECHANISM_PARAM_INVALIDCKR_OBJECT_HANDLE_INVALIDCKR_OPERATION_ACTIVECKR_OPERATION_NOT_INITIALIZEDCKR_PIN_INCORRECTCKR_PIN_INVALIDCKR_PIN_LEN_RANGECKR_PIN_EXPIREDCKR_PIN_LOCKEDCKR_SESSION_CLOSEDCKR_SESSION_COUNTCKR_SESSION_HANDLE_INVALIDCKR_SESSION_PARALLEL_NOT_SUPPORTEDCKR_SESSION_READ_ONLYCKR_SESSION_EXISTSCKR_SESSION_READ_ONLY_EXISTSCKR_SESSION_READ_WRITE_SO_EXISTSCKR_SIGNATURE_INVALIDCKR_SIGNATURE_LEN_RANGECKR_TEMPLATE_INCOMPLETECKR_TEMPLATE_INCONSISTENTCKR_TOKEN_NOT_PRESENTCKR_TOKEN_NOT_RECOGNIZEDCKR_TOKEN_WRITE_PROTECTEDCKR_UNWRAPPING_KEY_HANDLE_INVALIDCKR_UNWRAPPING_KEY_SIZE_RANGECKR_UNWRAPPING_KEY_TYPE_INCONSISTENTCKR_USER_ALREADY_LOGGED_INCKR_USER_NOT_LOGGED_INCKR_USER_PIN_NOT_INITIALIZEDCKR_USER_TYPE_INVALIDCKR_USER_ANOTHER_ALREADY_LOGGED_INCKR_USER_TOO_MANY_TYPESCKR_WRAPPED_KEY_INVALIDCKR_WRAPPED_KEY_LEN_RANGECKR_WRAPPING_KEY_HANDLE_INVALIDCKR_WRAPPING_KEY_SIZE_RANGECKR_WRAPPING_KEY_TYPE_INCONSISTENTCKR_RANDOM_SEED_NOT_SUPPORTEDCKR_RANDOM_NO_RNGCKR_DOMAIN_PARAMS_INVALIDCKR_BUFFER_TOO_SMALLCKR_SAVED_STATE_INVALIDCKR_INFORMATION_SENSITIVECKR_STATE_UNSAVEABLECKR_CRYPTOKI_NOT_INITIALIZEDCKR_CRYPTOKI_ALREADY_INITIALIZEDCKR_MUTEX_BADCKR_MUTEX_NOT_LOCKEDCKR_FUNCTION_REJECTEDCKR_VENDOR_DEFINEDUnknown PKCS#11 errorPKCS#11: pkcs11h_initialize entryPKCS#11: Cannot initialize crypto enginePKCS#11: pkcs11h_initialize return rv=%lu-'%s'PKCS#11: pkcs11h_terminate entryPKCS#11: Removing providersPKCS#11: Releasing sessionsPKCS#11: Warning: Found session with referencesPKCS#11: Terminating sloteventPKCS#11: Marking as uninitializedPKCS#11: pkcs11h_terminate return_g_pkcs11h_data!=NULLpkcs11h-core.c_g_pkcs11h_data->initializedhook!=NULLprovider_location!=NULLPKCS#11: pkcs11h_addProvider entry version='%s', pid=%d, reference='%s', provider_location='%s', allow_protected_auth=%d, mask_private_mode=%08x, cert_is_private=%d1.09PKCS#11: Adding provider '%s'-'%s'C_GetFunctionListPKCS11H_INIT_ARGS_RESERVEDPKCS#11: pkcs11h_addProvider Provider '%s' manufacturerID '%s'PKCS#11: Provider '%s' added rv=%lu-'%s'PKCS#11: pkcs11h_addProvider return rv=%lu-'%s'reference!=NULLPKCS#11: pkcs11h_removeProvider entry reference='%s'PKCS#11: Removing provider '%s'PKCS#11: pkcs11h_removeProvider return rv=%lu-'%s'PKCS#11: pkcs11h_plugAndPlay entry pid=%dPKCS#11: pkcs11h_plugAndPlay returnPKCS#11: pkcs11h_logout entryPKCS#11: pkcs11h_logout return rv=%lu-'%s'format!=NULLtoken!=NULLPKCS#11: __pkcs11h_hooks_default_token_prompt global_data=%p, user_data=%p, display='%s'PKCS#11: __pkcs11h_hooks_default_pin_prompt global_data=%p, user_data=%p, display='%s'PKCS#11: __pkcs11h_forkFixup entry pid=%d, activate_slotevent=%dPKCS#11: __pkcs11h_forkFixup returnsession!=NULLpkcs11h-data.capplication!=NULLlabel!=NULLPKCS#11: _pkcs11h_data_getObject entry session=%p, application='%s', label='%s', p_handle=%pPKCS#11: _pkcs11h_data_getObject return rv=%lu-'%s', *p_handle=%08lx_g_pkcs11h_data!=NULL_g_pkcs11h_data->initializedtoken_id!=NULLp_blob_size!=NULLPKCS#11: pkcs11h_data_get entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08x, blob=%p, *p_blob_size=%08xPKCS#11: Read data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_get return rv=%lu-'%s', *p_blob_size=%08xblob!=NULLPKCS#11: pkcs11h_data_put entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08x, blob=%p, blob_size=%08xPKCS#11: Write data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_put return rv=%lu-'%s'PKCS#11: pkcs11h_data_del entry token_id=%p, application='%s', label='%s', user_data=%p, mask_prompt=%08xPKCS#11: Remove data object failed rv=%lu-'%s'PKCS#11: pkcs11h_data_del return rv=%lu-'%s'PKCS#11: pkcs11h_freeDataIdList entry token_id_list=%pPKCS#11: pkcs11h_token_freeDataIdList returnp_data_id_list!=NULLPKCS#11: pkcs11h_data_enumDataObjects entry token_id=%p, is_public=%d, user_data=%p, mask_prompt=%08x, p_data_id_list=%pPKCS#11: Enumerate data objects failed rv=%lu-'%s'PKCS#11: pkcs11h_data_enumDataObjects return rv=%lu-'%s', *p_data_id_list=%pmax!=NULLpkcs11h-serialization.ctoken_id!=NULLPKCS#11: pkcs11h_token_serializeTokenId entry sz=%p, *max=%08x, token_id=%p\/"'%&#@!?$* <>{}[]()`|:;,.+-PKCS#11: pkcs11h_token_serializeTokenId return rv=%lu-'%s', *max=%08x, sz='%s'p_token_id!=NULLsz!=NULLPKCS#11: pkcs11h_token_deserializeTokenId entry p_token_id=%p, sz='%s'PKCS#11: pkcs11h_token_deserializeTokenId return rv=%lu-'%s'certificate_id!=NULLPKCS#11: pkcs11h_certificate_serializeCertificateId entry sz=%p, *max=%08x, certificate_id=%pPKCS#11: pkcs11h_certificate_serializeCertificateId return rv=%lu-'%s', *max=%08x, sz='%s'p_certificate_id!=NULLPKCS#11: pkcs11h_certificate_deserializeCertificateId entry p_certificate_id=%p, sz='%s'PKCS#11: pkcs11h_certificate_deserializeCertificateId return rv=%lu-'%s'rsa!=NULLpkcs11h-openssl.csession!=NULLsession->certificate!=NULLfrom!=NULLto!=NULLPKCS#11: __pkcs11h_openssl_dec entered - flen=%d, from=%p, to=%p, rsa=%p, padding=%dPKCS#11: Performing decryptionPKCS#11: Cannot perform decryption %ld:'%s'PKCS#11: __pkcs11h_openssl_dec - return rv=%lu-'%s'PKCS#11: __pkcs11h_openssl_enc entered - flen=%d, from=%p, to=%p, rsa=%p, padding=%dPKCS#11: Performing signaturePKCS#11: Cannot perform signature %ld:'%s'PKCS#11: __pkcs11h_openssl_enc - return rv=%lu-'%s'PKCS#11: __pkcs11h_openssl_finish - entered rsa=%pPKCS#11: __pkcs11h_openssl_finish - returncertificate!=NULLPKCS#11: pkcs11h_openssl_getX509 - entry certificate=%pPKCS#11: Unable to allocate certificate objectPKCS#11: Unable to parse X.509 certificatePKCS#11: pkcs11h_openssl_getX509 - return rv=%ld-'%s', x509=%pPKCS#11: pkcs11h_openssl_createSession - entryPKCS#11: Cannot allocate memorypkcs11PKCS#11: pkcs11h_openssl_createSession - return openssl_session=%popenssl_session!=NULLopenssl_session->reference_count>0PKCS#11: pkcs11h_openssl_freeSession - entry openssl_session=%p, count=%dPKCS#11: pkcs11h_openssl_freeSession - return!openssl_session->initializedPKCS#11: pkcs11h_openssl_session_getRSA - entry openssl_session=%pPKCS#11: Cannot get certificate objectPKCS#11: Cannot get public keyPKCS#11: Invalid public key algorithmPKCS#11: Cannot get RSA keyPKCS#11: pkcs11h_openssl_session_getRSA - return rsa=%pPKCS#11: pkcs11h_openssl_session_getX509 - entry openssl_session=%pPKCS#11: Cannot duplicate certificate objectPKCS#11: pkcs11h_openssl_session_getX509 - return x509=%p\``D`$DD``DDDEa$aE4a@aTa&E6EFEVEfEvEEhataEEaaEEEEEFF&F6FFFVFfFvFF8PFFFFFFFGG&G6GFG dVGfGaaa`aavGlaGpab$b8bHb|XbbGcc$cccdHd|dddeleeeeG,fLfGlfff gDgTgg h\hhGiDihiiii,jxjjj kXkkl4l\llll m8mHmhmxmmmmm4nxnnGnnnGn(o`ooopPpppqPqqqqGrhrxrrsH`sss t̷dtxttt$uhuutxHu0vxvvv wPwwwDx ,Pxxxxx|yyy,zzz{{ {h{{{|l|&H||h}}@~~l@Ȁ6HFH8VHfHā(vHP0t<Ѕ\h8p؆HX,<(8Ȋ<dԋ8d XDxЎ,4@Pdx̏܏ (DXlĐ4L`|ȑ0LhĒؒ  <`xГ4LhȔ $D\̕,L`|Ȗ$4LdxHH+@,,H*H*H@+H4HPl,LIXp ID&IX6ItFI Xx؛HXd\ hĞL|ȟL|HxtVI,xPfId|vIIإ$0IDTp|III,`IIا8IJlJ@&JЩ`P0SUة4X6JԪFJ8`VJfJvJīJJ@p':FVdl| ` `  `4`p``<0`toGo.ool.ooA2oo``>MM0NXMbb|N0OPO@RSUU0VW0Y b4 l../<02 A D J ` ```\$ !"|u d `1` 7u Q iL   }q 0d ) f   /А It8 xpC _ b0s% $@j3 ` p `tj #pnd @a ^J reK pP |0LR  1x8 V |[U hS p ]Y  !l >0 [^ x0\  @]U `le <b X0b tcA PK   @ !(4$?H`We`j`o`t` z`?4$H`M8 M4 0N: a$a?4$H`N5 0O (PO \4a a@afTak@Rm ha ta S aaUH U5 &0Vj YW 0Y ?48H` d ?4PH`aeaa`aaa  a?4lH`%b*$b/8b4Hb9Xbh>bHDcJc P$c`VcD\cHbd8hHd4n|dtdzdxePlePeeeP,f Lf lfPff4 g8DgTg\gp h<\hlhPi,Di$hi@i  iih,jL xj4'jH.j,5 k8<XkpCk@Jl,Q4l(X\l4_l4fl4ml(?4$H`t me8mHm hmaxm<m,m m m<4nDDxnJnn nn8nH(o8`oHo4o4p@Pp0pXp8q@Pq0qqHq< rL?4$H`ehrjxr(rt-s\2`sH8ssL> tXD  ̷jdtpxtvtD| tP  $uDhuuXuX 0vH0xv4v(v8 wDPwD wD&wl,Dx@3Y \  c,$jP qxxx xxx|y@y<y4,z\zHz8{ C{  {Hh{P{ {X|Pl|D|4|h}L} @~T~P l'L.@5Ȁ <PC8JāPQX(_LfXmPDt {|0DtL4H<D@Ѕh\ h88pL0  ؆XLL<&,-<4H;(BPI<P8C?4tH`̷Wk0N E <Ȋ<8<(d88ԋ(< 8,d <L L X< $ 8 , ( D4& x,, ,2 Ў,8 -?4$H`? *,4 /@P4dN xS \X ̏܏]  b (g Dl Xq lv {   Đ -   4 L `z|    ȑ     0 L h    Ē ؒ     <$D` xJ  $# Г) / 5 ; 4LA h$G  Ȕ(M S $ Y D_ \$e k q w ̕ }  $ ,  L ` |   Ȗ  $ $ 4 L d x $, +^ @,^ " ,~ C * _ * @+ 0 $ 4 P l0   $ $ ,  L  X p  $ D X t@ , 0" ) 80 X 7 x4> ,E ؛$L  S ,Z Ha X h d\o Xv - D \$?4|H`  . $ N \  ` H   h    ; Ğ L0 |@ H   ȟ L0 |0 l 0 H0" x8&0, ( |.  4 : t4A M?4$H`H e joX ,L` x >P   e Hk P@q w `\} d |\ إI?4$H`  N $ e0oD O T `P p |  X  # ,S ,40Sp '`X- 3ا,94?U 84Xl,^8d0j,p@@v0| ЩةD4$XL0Ԫ D8(` (ī8D@0p:?4$H`6 Q E lD   pN{ Z Yl % 6MU0E n|pa p(/ P1s    Zz ;Nck@J    x & & . @  =S[b0 }E p 5 P Jaf   1 "+? ?l a  E pXT :AJ pD k`V ]O `??  1pg UPL " @G 02  Y `: -<Qg=a   0  -4JVP   O l a 6  P - Q ` h i   `i  @Zi  !_y &!4!@ N! i!  }!\! !0\ !%.libs/libpkcs11-helper.so.1.0.0crti.svalues-Xa.cDdata.dataBbss.bssDrodata.rodatapkcs11h-mem.c.L23.L24.L30.L100.L107Dpicdata.picdatapkcs11h-sys.c__mytime__mysleep__mygettimeofday.L52.L53pkcs11h-crypto.c__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitialize__pkcs11h_crypto_openssl_certificate_get_expiration.L47.L48.L54__pkcs11h_crypto_openssl_certificate_get_dn.L135.L141__pkcs11h_crypto_openssl_certificate_is_issuer.L197.L203__pkcs11h_crypto_gnutls_initialize__pkcs11h_crypto_gnutls_uninitialize__pkcs11h_crypto_gnutls_certificate_get_expiration__pkcs11h_crypto_gnutls_certificate_get_dn__pkcs11h_crypto_gnutls_certificate_is_issuerpkcs11h-threading.c___pkcs11h_thread_startpkcs11h-util.c.L22.L29.L62.L79.L109.L220.L401pkcs11h-session.c.L25.L26.L32.L38.L51.L148.L170.L176.L189.L279.L312.L354.L387.L393.L399.L412.L460.L553.L578.L584.L597.L644.L681.L773.L801.L814.L866.L895.L908.L927.L982.L1029.L1076.L1153.L1175.L1216.L1233.L1242.L1248.L1261.L1324.L1353.L1397.L1422.L1447.L1513.L1571.L1612.L1646.L1703.L1758.L1786.L1826pkcs11h-token.c.L35.L67.L99.L105.L118.L149.L199.L205.L218.L266.L311.L355.L391.L464.L502.L614.L660.L733.L772.L817.L851.L864.L921.L1132pkcs11h-certificate.c.L37.L89.L111.L136.L180__pkcs11h_certificate_loadCertificate.L208.L214.L229.L276.L295__pkcs11h_certificate_updateCertificateIdDescription.L411.L436.L449.L491__pkcs11h_certificate_getKeyAttributes.L528.L556.L588.L717.L770.L804.L845.L881.L1036__pkcs11h_certificate_doPrivateOperation.L1054.L1059.L1061.L1071.L1077.L1088.L1094.L1107.L1201.L1263.L1388.L1440.L1483.L1533.L1565.L1584.L1619.L1656.L1669.L1728.L1766.L1817.L1956.L1999.L2053.L2096.L2150.L2193.L2247.L2290.L2345.L2372.L2478.L2533.L2665.L2700.L2713.L2895.L3004.L3034.L3073.L3086.L3242.L3289.L3366.L3431.L3478.L3619.L3644.L3657.L3685.L3720.L3835.L3887__pkcs11h_certificate_splitCertificateIdList.L3914.L3927.L4151.L4190.L4235.L4269.L4287.L4391.L4437.L4588.L4644.L4788pkcs11h-slotevent.c__pkcs11h_slotevent_checksum__pkcs11h_slotevent_provider.L56.L102.L132.L160.L209.L315.L344.L480__pkcs11h_slotevent_manager.L510.L558.L630.L661.L686.L738.L782.L811.L861.L889.L918.L967.L1007pkcs11h-core.c.L41.L44.L50.L59.L65.L68.L71.L74.L77.L80.L83.L86.L92.L95.L98.L101.L104.L110.L113.L116.L119.L122.L125.L128.L131.L134.L137.L140.L143.L146.L152.L155.L158.L161.L164.L167.L173.L179.L182.L185.L188.L191.L194.L200.L206.L212.L215.L221.L224.L227.L230.L233.L236.L239.L242.L245.L248.L251.L254.L257.L260.L263.L269.L272.L275.L278.L281.L284.L336__pkcs11h_threading_atfork_prepare__pkcs11h_threading_atfork_parent__pkcs11h_threading_atfork_child__pkcs11h_hooks_default_log__pkcs11h_hooks_default_token_prompt__pkcs11h_hooks_default_pin_prompt.L512.L540.L565.L602.L638.L679.L698.L741.L779.L826.L1004.L1017.L1018.L1042.L1096.L1123.L1184.L1269.L1287.L1314.L1327.L1345.L1541.L1580.L1682.L1712.L1779.L1800.L1865.L1881.L1919__pkcs11h_forkFixup.L2044.L2143pkcs11h-data.c_pkcs11h_data_getObject.L19.L34.L60.L123.L153.L159.L165.L181.L375.L395.L435.L448.L526.L590.L649.L725.L788.L827.L931.L973.L999.L1095.L1172pkcs11h-serialization.c.L72.L192.L338.L368.L381.L474.L493.L593pkcs11h-openssl.c__pkcs11h_openssl_get_openssl_session__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_dec.L73.L97__pkcs11h_openssl_enc.L264.L306.L330.L363__pkcs11h_openssl_finish.L425.L451.L488.L548.L591.L621.L646.L662.L691.L712.L748.L761.L822.L869.L893.L948.L975.L1044.L1079.L1131.L1173crtn.s_pkcs11h_session_release_pkcs11h_threading_threadStart_END__finipthread_cond_init_pkcs11h_session_validate_pkcs11h_session_logout_pkcs11h_mem_duplicate_pkcs11h_slotevent_init__pkcs11h_session_touch_g_pkcs11h_data_pkcs11h_session_reset_pkcs11h_session_login_pkcs11h_log_pkcs11h_util_hexToBinary_pkcs11h_token_newTokenId_pkcs11h_token_getTokenId.XBKk4Dpg4XaOFl9.__pkcs11h_certificate_updateCertificateIdDescription.unknown_g_pkcs11h_crypto_enginepkcs11h_token_logout.XBKk4Dpg4XaOFl9.__pkcs11h_certificate_updateCertificateIdDescription.separator.XBKk4Dpg4XaO1W9._pkcs11h_util_escapeString.x_pkcs1h_threading_mutexLockAll_pkcs11h_session_freeObjectAttributes_g_pkcs11h_sys_engine_pkcs11h_util_escapeString_pkcs1h_threading_mutexReleaseAll_pkcs11h_slotevent_terminate_force_pkcs11h_session_findObjects_START__pkcs11h_session_getSlotList_pkcs11h_threading_condSignal_pkcs11h_mem_malloc_pkcs11h_threading_threadJoin_pkcs11h_session_getObjectAttributes_g_pkcs11h_loglevel.XAKk4Dpf4XaOVN9._g_pkcs11h_crypto_engine_openssl_pkcs11h_mem_strdup_pkcs11h_certificate_resetSession_pkcs11h_session_getSessionByTokenId_pkcs11h_certificate_newCertificateId_pkcs11h_threading_sleep_pkcs11h_util_binaryToHex_pkcs11h_certificate_validateSession_pkcs11h_threading_mutexRelease_pkcs11h_certificate_enumSessionCertificates_pkcs11h_util_unescapeString_pkcs11h_slotevent_terminate_pkcs11h_threading_mutexFree_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexLock_lib_version.XBKk4Dpg4XaO1W9._pkcs11h_util_binaryToHex.x.XAKk4Dpf4XaOVN9._g_pkcs11h_crypto_engine_gnutls_pkcs11h_util_fixupFixedString_pkcs11h_threading_condWait_pkcs11h_threading_condInit_pkcs11h_threading_condFree.XAKk4Dpf4XaOFS9.__s_pkcs11h_threading_mutex_list_pkcs11h_mem_free_pkcs11h_session_getObjectById_pkcs11h_slotevent_notify_pkcs11h_certificate_isBetterCertificatepkcs11h_setMaxLoginRetriespkcs11h_certificate_unwrappkcs11h_token_serializeTokenIdpkcs11h_certificate_enumCertificateIdsstrncpypkcs11h_engine_setSystemdlclosepkcs11h_engine_setCryptopkcs11h_openssl_getCleanupHookpkcs11h_certificate_releaseSessiongnutls_x509_crt_get_dnstrrchrpkcs11h_certificate_signEVP_PKEY_freedlsympkcs11h_certificate_signAnypkcs11h_logoutpkcs11h_data_getpkcs11h_token_loginX509_verifypthread_atforklocaltimepkcs11h_getVersiongnutls_x509_crt_initpkcs11h_openssl_freeSessiongnutls_global_initgnutls_global_deinitmemmovepkcs11h_certificate_serializeCertificateIdpkcs11h_getMessageX509_dup__ctypegetenvpkcs11h_plugAndPlayX509_freepkcs11h_certificate_getCertificateBlobpkcs11h_getLogLevelpkcs11h_setProtectedAuthenticationX509_cmp_current_timeasctimedlopenpkcs11h_token_enumTokenIdsRSA_get_ex_dataX509_get_pubkeyX509_get_subject_namepkcs11h_certificate_decryptX509_NAME_onelinestrcmpRSA_sizepkcs11h_setForkModepkcs11h_data_putpkcs11h_certificate_setCertificateIdCertificateBlobpthread_mutex_initRSA_freepkcs11h_certificate_getCertificateIdpthread_mutex_unlockpkcs11h_certificate_duplicateCertificateIdpkcs11h_certificate_ensureKeyAccessmemsetEVP_PKEY_get1_RSApkcs11h_token_sameTokenIdX509_newpkcs11h_addProviderpkcs11h_certificate_getPromptMaskgnutls_x509_crt_get_expiration_timepthread_mutex_lockpthread_joinpthread_cond_signalmktimepkcs11h_initializegnutls_x509_crt_importpthread_cond_waitpkcs11h_certificate_signRecoverpkcs11h_openssl_createSessiongetpid__assertpkcs11h_certificate_freeCertificateIdpthread_mutex_trylock_PROCEDURE_LINKAGE_TABLE_pkcs11h_openssl_getX509sigaddsetpthread_sigmaskpkcs11h_certificate_freeCertificateIdList_endpkcs11h_data_enumDataObjectspkcs11h_setLogHookpkcs11h_certificate_freeCertificatepkcs11h_certificate_deserializeCertificateIdpthread_cond_timedwaitpkcs11h_removeProvidergmtimegnutls_x509_crt_verifypkcs11h_token_deserializeTokenIdpkcs11h_setLogLevel_edatapkcs11h_terminatepkcs11h_data_delRSA_set_methodX509_get_issuer_namepthread_mutex_destroypkcs11h_data_freeDataIdListpkcs11h_setSlotEventHookgnutls_x509_crt_deinitd2i_X509pkcs11h_setTokenPromptHookOpenSSL_add_all_digestssscanfpkcs11h_certificate_lockSessionRSA_get_default_methodstrchr_GLOBAL_OFFSET_TABLE_sigemptysetpkcs11h_certificate_enumTokenCertificateIdspkcs11h_setPINPromptHookpkcs11h_token_freeTokenIdListpkcs11h_certificate_getUserDatapkcs11h_certificate_decryptAnypkcs11h_token_freeTokenIdpkcs11h_certificate_creategnutls_x509_crt_get_activation_timepthread_createstrncatpkcs11h_certificate_setPromptMaskRSA_set_ex_data_etextpkcs11h_certificate_setUserDatastrlenpkcs11h_openssl_setCleanupHookpkcs11h_token_duplicateTokenIdpkcs11h_openssl_session_getX509X509_NAME_cmppkcs11h_setPINCachePeriodpkcs11h_token_ensureAccesspkcs11h_getFeatures_DYNAMICpkcs11h_certificate_ensureCertificateAccesspkcs11h_openssl_session_getRSAusleep%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMI%Z%%M% %I% %E% SMIacomp: Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15as: Sun Compiler Common 12.1 SunOS_i386 Patch 141858-03 2009/09/21ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1689~pkcs11h-mem.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-mem.o pkcs11h-mem.c -W0,-xp.XAKk4Dpf4XaO1D9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaO1D9.;backend;raw;cd;DBG_GEN 5.2.7_pkcs11h_mem_malloc=JKU+p;Is< rv>unsigned longCK_RVvoid!&unsigned0size_t<_pkcs11h_mem_freeVK'LUpU_pkcs11h_mem_strdupc0LLUdesta srcb char_pkcs11h_mem_duplicaterLMUdestnp_dest_sizeo srcpmem_sizeqrvs0<int __assert    strlen<,  memset,U ,  0U memmove, , Z 0pkcs11h-sys.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-sys.o pkcs11h-sys.c -W0,-xp.XAKk4Dpf4XaOlI9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOlI9.;backend;raw;cd;DBG_GEN 5.2.7__mytime@MMUlongtime_t__mysleepFM$NUusecFunsigned long__mygettimeofdayQ0NjNUGGtvQintsuseconds_ttimeval tv_sec# tv_usecN# `unsignedvoid            G  pkcs11h_sys_engine_ss malloc# free# time# usleep# gettimeofday# pkcs11h_engine_system_t_g_pkcs11h_sys_enginesV$pkcs11h_engine_setSystemepNNUenginedCK_RV   usleepG/ gettimeofdayGT   timeq Tcharq yq __assert ~  G memmove   malloc free ,pkcs11h-crypto.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-crypto.o pkcs11h-crypto.c -W0,-xp.XAKk4Dpf4XaOVN9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOVN9.;backend;raw;cd;DBG_GEN 5.2.7?__pkcs11h_crypto_openssl_initializeN%OUglobal_dataintvoid __pkcs11h_crypto_openssl_uninitialize0OHOUiiglobal_data __pkcs11h_crypto_openssl_certificate_get_expirationPO>RUglobal_datablob blob_sizeexpirationx509d2inotBeforeM notAfterM RPRPRPRtm1 unsigned charunsigned size_tlong asn1_string_st: length# type# data# flags# ASN1_INTEGER:charRZ asn1_object_st sn_# ln_# nid# length# data# flags# dASN1_OBJECTR ASN1_BOOLEAN ASN1_STRING ASN1_ENUMERATED  ASN1_BIT_STRING( ASN1_OCTET_STRINGC ASN1_PRINTABLESTRING` ASN1_T61STRING ASN1_IA5STRING ASN1_GENERALSTRING ASN1_BMPSTRING ASN1_UNIVERSALSTRING ASN1_UTCTIME  ASN1_GENERALIZEDTIME$ ASN1_VISIBLESTRINGD ASN1_UTF8STRINGb ASN1_VALUE_st }ASN1_VALUE 2 ptr# boolean# asn1_string# object# integerM# enumerated## bit_string># octet_string[# printablestring{# t61string# ia5string# generalstring# bmpstring# universalstring# utctime# generalizedtime?# visiblestring]# utf8stringx# set# sequence# asn1_value# asn1_type_stb type# value# 2ASN1_TYPEb X509_algor_st algorithm# parameterr# wX509_ALGORRR  stack_stg num# data# sorted# num_alloc# comp #  STACKg buf_mem_st  length# data# max# x BUF_MEM unsigned long X509_name_st( entriess # modified# bytes # hash # X509_NAME( ASN1_TIME= X509_val_st notBeforeM # notAfterM # R X509_VAL R             C    H w M  R  bignum_st d| # top# dmax# neg# flags#   bignum_ctx            * BIGNUM bn_mont_ctx_stH ri# RR4 # N4 # Ni4 #, n0 #@ flags#DA    % /            rsa_stX W pad# version# meth# engine# n# e# d# p# q# dmp1#$ dmq1#( iqmp#, ex_data#0 references#8 flags#< _method_mod_n6#@ _method_mod_p6#D _method_mod_q6#H bignum_data#L blinding^#P mt_blinding^#T W  \a  6  6 cb_1# cb_2# bn_gencb_st m ver# arg # cb#  m rsa_meth_st8  name # rsa_pub_enc # rsa_pub_dec # rsa_priv_encC # rsa_priv_decw # rsa_mod_exp # bn_mod_exp # init # finish # flags#$ app_data#( rsa_sign#, rsa_verify#0 rsa_keygen#4 RSA_METHOD engine_st ENGINE4 crypto_ex_data_st  sks # dummy# CRYPTO_EX_DATA A BN_MONT_CTX$ bn_blinding_st ;BN_BLINDINGLRcm( DSA_SIG_st  r# s#|rw w wZw        ! _ iw  dn  swww| w  dsa_method0  nameh# dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_expZ# bn_mod_exp# init# finish# flags# app_data#$ dsa_paramgen#( dsa_keygen#, "DSA_METHOD  dsa_stD ! pad# version# write_params# p# q# g# pub_key# priv_key# kinv# r#$ flags#( method_mont_p6#, references#0 ex_data#4 meth##< engine#@R!pA+0 FkK+P dh_stL  pad# version# p# g# length# pub_key# priv_key# flags# method_mont_p6# q#$ j#( seed#, seedlen#0 counter#4 references#8 ex_data#< meth#D engine#Hp      ++*+  dh_method$  name&# generate_keyA# compute_keyk# bn_mod_exp# init# finish# flags# app_data# generate_params*# /DH_METHOD ec_key_st J ptr# rsa # dsaw# dh+# ec# evp_pkey_st type# save_type# references# pkey# save_parameters# attributess # JEVP_PKEY X509_pubkey_st ! algor# public_key># pkey# X509_PUBKEY! ASN1_ENCODING_st z enc# len# modified# 8ASN1_ENCODING x509_cinf_st4Z versionM# serialNumberM# signature# issuer8 # validity # subject8 # key3# issuerUID># subjectUID># extensionss #$ encz#( X509_CINFZ AUTHORITY_KEYID_sto X509_POLICY_CACHE_st X509_POLICY_CACHE x509_cert_aux_st. trusts # rejects # aliasx# keyid[# others # X509_CERT_AUX. x509_st\ cert_infoj# sig_alg# signature># valid# references# name# ex_data# ex_pathlen# ex_pcpathlen#$ ex_flags #( ex_kusage #, ex_xkusage #0 ex_nscert #4 skid[#8 akid#< policy_cache#@ sha1_hash#D auxB#X GX509__pkcs11_openssl_d2i_t tm$U tm_sec# tm_min# tm_hour# tm_mday# tm_mon# tm_year# tm_wday# tm_yday# tm_isdst# __pkcs11h_crypto_openssl_certificate_get_dn@RSUglobal_data+blob 0blob_size5dn:dn_maxx509d2i !&__pkcs11h_crypto_openssl_certificate_is_issuer0SUUglobal_data+issuer_blob, issuer_blob_size-cert_blob.cert_blob_size/x509_issuer1x509_cert2pub_issuer3d2i4is_issuer5  PKCS11H_BOOL    4      > C  9 H M R W \             pkcs11h_crypto_engine_s! global_data # initialize# uninitialize# certificate_get_expiration4 # certificate_get_dn # certificate_is_issuer # pkcs11h_engine_crypto_t!_g_pkcs11h_crypto_engine_openssl!|__pkcs11h_crypto_gnutls_initializeUUU<"<"global_data __pkcs11h_crypto_gnutls_uninitializeU%VU""global_data __pkcs11h_crypto_gnutls_certificate_get_expiration0VWU##global_data#blob #blob_size#expirationcert#datum $now5$notBefore5$notAfter5$ ## gnutls_x509_crt_int# #gnutls_x509_crt_t $ data# size# #gnutls_datum_t time_t__pkcs11h_crypto_gnutls_certificate_get_dnW&YU % %global_data/%blob 4%blob_size9%dn>%dn_maxcert#datum $s %%*%__pkcs11h_crypto_gnutls_certificate_is_issuer-0YZU&&global_data(&issuer_blob) &issuer_blob_size*&cert_blob+&cert_blob_size,cert_issuer#.cert_cert#/datum $0is_issuer1result2 &&&&!_g_pkcs11h_crypto_engine_gnutls&{_g_pkcs11h_crypto_engine![8pkcs11h_engine_setCryptogZ[U|'|''enginef_engine'hrv|'i CK_RV ''!'#'gnutls_x509_crt_verify'#' #gnutls_x509_crt_get_expiration_time5$%('gnutls_x509_crt_get_activation_time5$\('gnutls_x509_crt_get_dn(# #((GNUTLS_X509_FMT_DERGNUTLS_X509_FMT_PEMgnutls_x509_crt_import)#((gnutls_x509_crt_deinit()##gnutls_x509_crt_initU)()gnutls_global_deinitgnutls_global_init ) )X509_NAME_cmp)))GX509_get_pubkey))GX509_get_subject_name8 *)X509_get_issuer_name8 C*) X509_NAME_onelinew*C*|**d2i_X509*w**GX509_free**X509_newX509_cmp_current_time+*JX509_verify8+*+EVP_PKEY_freeU++OpenSSL_add_all_digests5$time5$+r+mktime5$+++localtime++++gmtime+++R+R,__assert4,, ,memset X, X, memmove  ],pkcs11h-threading.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-threading.o pkcs11h-threading.c -W0,-xp.XAKk4Dpf4XaOFS9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpf4XaOFS9.;backend;raw;cd;DBG_GEN 5.2.7 unsigned shortuint16_tunsigned charuint8_t__pthread_mutex_flag1#__pthread_mutex_flag2#__pthread_mutex_ceiling#__pthread_mutex_type#__pthread_mutex_magic#long__pthread_mutex_pad#unsigneduint32_t&__pthread_ownerpid#__pthread_lockword#unsigned long long&upad64_t__pthread_mutex_lock64#__pthread_mutex_lock32#__pthread_mutex_owner64<# _pthread_mutex __pthread_mutex_flags#__pthread_mutex_lockK#__pthread_mutex_data<#_pkcs11h_mutex_t [ intAPKCS11H_BOOL __pkcs11h_threading_mutex_entry_s next7#p_mutex<#lockedH# 7__pkcs11h_threading_mutex_entry_t mutex #head#__s_pkcs11h_threading_mutex_listUP_pkcs11h_threading_sleep^[%\Uggmilli]_pkcs11h_threading_mutexInite0\:]UmutexdrvfX\,]entrytmutex_lockedHuunsigned longCK_RV<_pkcs11h_threading_mutexLock@]]U{{mutexrv<_pkcs11h_threading_mutexRelease]]Umutexrv<_pkcs11h_threading_mutexFree^_Uwwmutex!^_lastentrymutex_lockedH<_pkcs1h_threading_mutexLockAll _`U9entrymutex_lockedHall_mutexes_lockedH_`_`_`okH_pkcs1h_threading_mutexReleaseAllC`aUentryDmutex_lockedHE_pkcs11h_threading_condSignalaa%bU  cond`rvb o __pthread_cond_flag #__pthread_cond_type#__pthread_cond_magic# _pthread_cond __pthread_cond_flags #__pthread_cond_data<#o pthread_cond_tpthread_mutex_t( cond #mut #  _pkcs11h_threading_condInit}0bbUn n cond|rv~ _pkcs11h_threading_condWaitbcU( ( cond- milli rvbc cc ccnowQ timeout  time_tsuseconds_t timeval tv_sec2 #tv_usec? # timespec tv_sec2 #tv_nsec#_pkcs11h_threading_condFreecdU  cond ___pkcs11h_thread_start ddU   p_data signal_maskD ret iAvoid     _pkcs11h_thread_start_t  start #data # ___pkcs11h_thread_data_t *  D __sigbits #* sigset_t _pkcs11h_threading_threadStartdqeU  thread start  data_data rv   _pkcs11h_threading_threadJoin3eeUCCthread2 o  Rpthread_cond_timedwaitAHMWpthread_cond_waitAHMpthread_cond_signalAH _pthread_condattr__pthread_condattrp # pthread_cond_initAKHpthread_mutex_trylockAtMpthread_mutex_unlockAMpthread_mutex_lockAMpthread_mutex_destroyAM _pthread_mutexattr#__pthread_mutexattrp # #pthread_mutex_initAXM( pthread_joinAX _pthread_attr__pthread_attrp #   pthread_createA     _pkcs11h_mem_free: : ?D_pkcs11h_mem_mallocIN*  * pthread_sigmaskAAsigemptysetAsigaddsetAA/xpkcs11h-util.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-util.o pkcs11h-util.c -W0,-xp.XAKk4Dpg4XaO1W9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaO1W9.;backend;raw;cd;DBG_GEN 5.2.7P_pkcs11h_util_fixupFixedStringhh >hhv<d Cunsigned longCK_RVunsigned char<long  int _pkcs11h_util_binaryToHexh3jUtarget{target_size| source}source_size~xliH B#HH _pkcs11h_util_escapeString@jslUtargetsource maxinvalid_charsxprvst#nH# _pkcs11h_util_unescapeStringlcnU22targetAsource FmaxrvsPt#nH +mn ;mm ;mm ;mm Gmm Gmm Gmm Omm Omm Omm hmm hmmbUu<#7<K f fp__assertkustrchr#voidmemmove< sscanf4zpkcs11h-session.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-session.o pkcs11h-session.c -W0,-xp.XAKk4Dpg4XaOlb9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOlb9.;backend;raw;cd;DBG_GEN 5.2.7F_pkcs11h_session_getSlotListCpnpUt provider? token_present@  pSlotListA# pulCountB_slots6 D_slotnumK ErvFunsigned longtCK_RV_pkcs11h_provider_tintPKCS11H_BOOLcharlong !  void unsigned char _CK_VERSIONG major# minor#tX GXCK_C_Initializet sCK_C_Finalize   tCK_FLAGS    _CK_INFOLN cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H tdN SdCK_C_GetInfo  |t CK_C_GetFunctionList tt CK_C_GetSlotList @ ?    _CK_SLOT_INFOh slotDescription# manufacturerID#@ flags#` hardwareVersion#d firmwareVersion#f tt CK_C_GetSlotInfo           $  _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber#P flags#` ulMaxSessionCountt#d ulSessionCountt#h ulMaxRwSessionCountt#l ulRwSessionCountt#p ulMaxPinLent#t ulMinPinLent#x ulTotalPublicMemoryt#| ulFreePublicMemoryt# ulTotalPrivateMemoryt# ulFreePrivateMemoryt# hardwareVersion# firmwareVersion# utcTime# $tt CK_C_GetTokenInfot(t (CK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySizet# ulMaxKeySizet# flags# Ittt CK_C_GetMechanismInfo t tt  CK_C_InitTokent7 tt  7 CK_C_InitPINtt ttt O t CK_C_SetPINt tt t tt   CK_C_OpenSessiont t  CK_C_CloseSessiont+ t  + CK_C_CloseAllSessionstCK_SLOT_IDtCK_STATE _CK_SESSION_INFO slotIDL # state] # flags# ulDeviceErrort# l t t  CK_C_GetSessionInfot t  CK_C_GetOperationStatetb tttt = b CK_C_SetOperationStatet ttt  CK_C_Logint t  CK_C_LogouttCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE ? type # pValue# ulValueLent# td t? t D d CK_C_CreateObjectt tt? t  CK_C_CopyObjectt tt  CK_C_DestroyObjectt tt  CK_C_GetObjectSizetN tt? t . N CK_C_GetAttributeValuet tt? t p  CK_C_SetAttributeValuet t? t  CK_C_FindObjectsInitt tt  CK_C_FindObjectst:t ):CK_C_FindObjectsFinaltCK_MECHANISM_TYPE _CK_MECHANISM  mechanism[# pParameter# ulParameterLent# sttt CK_C_EncryptInitt&tt &CK_C_Encrypttctt >cCK_C_EncryptUpdatett CK_C_EncryptFinalttt CK_C_DecryptInitttt CK_C_DecrypttRtt -RCK_C_DecryptUpdatett pCK_C_DecryptFinaltt CK_C_DigestInitttt CK_C_Digestt0tt 0CK_C_DigestUpdatetctt McCK_C_DigestKeytt }CK_C_DigestFinalttt CK_C_SignInitt tt  CK_C_Signt=tt "=CK_C_SignUpdatetst XsCK_C_SignFinalttt CK_C_SignRecoverInitttt CK_C_SignRecovert$tt $CK_C_VerifyInittdttt ?dCK_C_Verifyttt {CK_C_VerifyUpdatettt CK_C_VerifyFinalttt CK_C_VerifyRecoverInittLtt 'LCK_C_VerifyRecoverttt jCK_C_DigestEncryptUpdatettt CK_C_DecryptDigestUpdatet!tt !CK_C_SignEncryptUpdatethtt ChCK_C_DecryptVerifyUpdatett? t CK_C_GenerateKeytt? t? t CK_C_GenerateKeyPairtKttt !KCK_C_WrapKeytttt? t cCK_C_UnwrapKeyttt? t CK_C_DeriveKeyttt CK_C_SeedRandomtFtt +FCK_C_GenerateRandomtvt evCK_C_GetFunctionStatustt CK_C_CancelFunctiontt CK_C_WaitForSlotEvent_CK_FUNCTION_LISTf version# C_Initialize]# C_Finalize# C_GetInfoi# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismList-# C_GetMechanismInfo#$ C_InitToken #( C_InitPIN< #, C_SetPINy #0 C_OpenSession #4 C_CloseSession #8 C_CloseAllSessions0 #< C_GetSessionInfo #@ C_GetOperationState #D C_SetOperationStateg #H C_Login #L C_Logout #P C_CreateObjecti #T C_CopyObject #X C_DestroyObject #\ C_GetObjectSize #` C_GetAttributeValueS #d C_SetAttributeValue #h C_FindObjectsInit #l C_FindObjects#p C_FindObjectsFinal?#t C_EncryptInit#x C_Encrypt+#| C_EncryptUpdateh# C_EncryptFinal# C_DecryptInit# C_Decrypt# C_DecryptUpdateW# C_DecryptFinal# C_DigestInit# C_Digest# C_DigestUpdate5# C_DigestKeyh# C_DigestFinal# C_SignInit# C_Sign# C_SignUpdateB# C_SignFinalx# C_SignRecoverInit# C_SignRecover# C_VerifyInit)# C_Verifyi# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInit # C_VerifyRecoverQ# C_DigestEncryptUpdate# C_DecryptDigestUpdate# C_SignEncryptUpdate&# C_DecryptVerifyUpdatem# C_GenerateKey# C_GenerateKeyPair# C_WrapKeyP# C_UnwrapKey# C_DeriveKey# C_SeedRandom# C_GenerateRandomK# C_GetFunctionStatus{# C_CancelFunction# C_WaitForSlotEvent#|CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t_pkcs11h_provider_sT next# enabled# reference# manufacturerID# handle# ff# should_finalize# allow_protected_auth# cert_is_private# mask_private_mode# mask_decrypt_mode# slot_event_method# slot_poll_interval# slotevent_thread# CK_BBOOL  CK_ULONG_PTRCK_SLOT_ID_PTRtCK_ULONG_pkcs11h_session_getObjectAttributesp0sU 'session2'object N'attrsS'countrvi'_pkcs11h_session_t+! !.>.session Y.class  ^.idc.id_sizeh.p_handlefilter.objects)objects_foundK rvC tCK_OBJECT_CLASSC.a"s") CK_ATTRIBUTE m.. _pkcs11h_session_validateZU..sessionYrv[ __pkcs11h_session_touch.U7/7/session _pkcs11h_session_login0U00session0is_publicOnly 0readonly0user_data0mask_promptslotL rv@@@login_succeededretry_count,!!utfPIN0lPINLengthK pin0 CK_UTF8CHAR_PTR1_pkcs11h_session_logoutctUH1H1sessionb  !R1_pkcs11h_token_getTokenId1M1W1 11_pkcs11h_log111 {%1_pkcs11h_threading_mutexFree111_pkcs11h_threading_mutexRelease6211_pkcs11h_threading_mutexLockk2621_pkcs11h_threading_mutexInit2k2 2 22_pkcs11h_mem_free22 2 22_pkcs11h_mem_malloc322!!pkcs11h_token_sameTokenIdZ33#3R1!pkcs11h_token_duplicateTokenId3Z3_3 o!pkcs11h_token_freeTokenId33t 3pkcs11h_getMessage343 4 4__assert8444 84strlens"\4=4memset4 4memmove4}1pkcs11h-token.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-token.o pkcs11h-token.c -W0,-xp.XAKk4Dpg4XaOVg9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOVg9.;backend;raw;cd;DBG_GEN 5.2.7&pkcs11h_token_freeTokenId?Utoken_id>unsigned longCK_RVcharlong , !=   N  _  !p  pkcs11h_token_id_sd display# manufacturerID,# model=# serialNumberN# label_# ppkcs11h_token_id_tpkcs11h_token_duplicateTokenIdXUmrtoVwfromW rvY mpkcs11h_token_sameTokenIdUab intPKCS11H_BOOL_pkcs11h_token_getTokenIdАUninfop_token_id token_id rvunsigned charn  n  n n CK_FLAGS_CK_VERSION majorn# minorn#n _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber#P flags#` ulMaxSessionCount#d ulSessionCount#h ulMaxRwSessionCount#l ulRwSessionCount#p ulMaxPinLen#t ulMinPinLen#x ulTotalPublicMemory#| ulFreePublicMemory# ulTotalPrivateMemory# ulFreePrivateMemory# hardwareVersion# firmwareVersion# utcTime# CK_TOKEN_INFO_PTRm_pkcs11h_token_newTokenId~U^^p_token_id rv token_idmpkcs11h_token_logout Utoken_id mutex_locked rvsession(_pkcs11h_session_t"_pkcs11h_provider_t : !K  void KiS XiCK_C_InitializeS CK_C_Finalizen  n  _CK_INFOLP cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H f P U f CK_C_GetInfo  ~    CK_C_GetFunctionList  n   CK_C_GetSlotListn@ ?n  _CK_SLOT_INFOh slotDescription # manufacturerID #@ flags#` hardwareVersion#d firmwareVersion#f     CK_C_GetSlotInfo   CK_C_GetTokenInfo     CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize# ulMaxKeySize# flags# @    CK_C_GetMechanismInfo n    CK_C_InitToken.    . CK_C_InitPINk    F k CK_C_SetPIN S  S   CK_C_OpenSession   CK_C_CloseSession"   " CK_C_CloseAllSessionsCK_SLOT_IDCK_STATE_CK_SESSION_INFO slotIDC # stateT # flags# ulDeviceError# c    CK_C_GetSessionInfo  CK_C_GetOperationStateY  4YCK_C_SetOperationState  {CK_C_Login CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE 6 type# pValueS# ulValueLen# [6 ;[CK_C_CreateObject6 xCK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSizeE6 %ECK_C_GetAttributeValue6 gCK_C_SetAttributeValue6 CK_C_FindObjectsInit  CK_C_FindObjects1 1CK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM  mechanismR# pParameterS# ulParameterLen# j CK_C_EncryptInit   CK_C_EncryptZ   5ZCK_C_EncryptUpdate  xCK_C_EncryptFinal CK_C_DecryptInit     CK_C_DecryptI   $ICK_C_DecryptUpdate  gCK_C_DecryptFinal CK_C_DigestInit   CK_C_Digest'  'CK_C_DigestUpdateZ DZCK_C_DigestKey  tCK_C_DigestFinal CK_C_SignInit   CK_C_Sign4  4CK_C_SignUpdatej  OjCK_C_SignFinal CK_C_SignRecoverInit   CK_C_SignRecover CK_C_VerifyInit[   6[CK_C_Verify  rCK_C_VerifyUpdate  CK_C_VerifyFinal CK_C_VerifyRecoverInitC   CCK_C_VerifyRecover   aCK_C_DigestEncryptUpdate   CK_C_DecryptDigestUpdate   CK_C_SignEncryptUpdate_   :_CK_C_DecryptVerifyUpdate6 CK_C_GenerateKey66  CK_C_GenerateKeyPairB  BCK_C_WrapKey 6 ZCK_C_UnwrapKey6 CK_C_DeriveKey  CK_C_SeedRandom=  "=CK_C_GenerateRandomm \mCK_C_GetFunctionStatus CK_C_CancelFunction S CK_C_WaitForSlotEvent _CK_FUNCTION_LIST]! version# C_Initializen# C_Finalize# C_GetInfok # C_GetFunctionList # C_GetSlotList # C_GetSlotInfo # C_GetTokenInfo # C_GetMechanismList$ # C_GetMechanismInfo #$ C_InitToken #( C_InitPIN3 #, C_SetPINp #0 C_OpenSession #4 C_CloseSession #8 C_CloseAllSessions' #< C_GetSessionInfo #@ C_GetOperationState#D C_SetOperationState^#H C_Login#L C_Logout#P C_CreateObject`#T C_CopyObject#X C_DestroyObject#\ C_GetObjectSize #` C_GetAttributeValueJ#d C_SetAttributeValue#h C_FindObjectsInit#l C_FindObjects #p C_FindObjectsFinal6#t C_EncryptInit#x C_Encrypt"#| C_EncryptUpdate_# C_EncryptFinal# C_DecryptInit# C_Decrypt# C_DecryptUpdateN# C_DecryptFinal# C_DigestInit# C_Digest# C_DigestUpdate,# C_DigestKey_# C_DigestFinal# C_SignInit# C_Sign # C_SignUpdate9# C_SignFinalo# C_SignRecoverInit# C_SignRecover# C_VerifyInit # C_Verify`# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInit# C_VerifyRecoverH# C_DigestEncryptUpdate# C_DecryptDigestUpdate# C_SignEncryptUpdate# C_DecryptVerifyUpdated# C_GenerateKey# C_GenerateKeyPair# C_WrapKeyG# C_UnwrapKey# C_DeriveKey# C_SeedRandom # C_GenerateRandomB# C_GetFunctionStatusr# C_CancelFunction# C_WaitForSlotEvent#~ CK_FUNCTION_LIST_PTRunsignedx!_pkcs11h_thread_t _pkcs11h_provider_sT" next # enabled# reference'# manufacturerID:# handleS# f]!# should_finalize# allow_protected_auth# cert_is_private# mask_private_modex!# mask_decrypt_modex!# slot_event_methodx!# slot_poll_intervalx!# slotevent_thread!# !CK_SESSION_HANDLEtime_t$pkcs11h_certificate_id_list_t S# CK_BYTE_PTRx!size_t pkcs11h_certificate_id_s$ token_id# displayName@## attrCKA_IDS## attrCKA_ID_sizee## certificate_blob # certificate_blob_sizee## r#$pkcs11h_certificate_id_tpkcs11h_certificate_id_list_s$ next## certificate_id$$# C$unsigned short$uint16_t nuint8_t  `% __pthread_mutex_flag1$# __pthread_mutex_flag2$# __pthread_mutex_ceiling$# __pthread_mutex_type$# __pthread_mutex_magic$#$q%  % __pthread_mutex_pad`%#x!uint32_t  % __pthread_ownerpid%# __pthread_lockword%#unsigned long long%upad64_t  m& __pthread_mutex_lock64q%# __pthread_mutex_lock32%# __pthread_mutex_owner64%#_pthread_mutex & __pthread_mutex_flags$# __pthread_mutex_lock&# __pthread_mutex_data%#m&_pkcs11h_mutex_t_pkcs11h_session_sD( next# reference_count# valid# provider # token_id# session_handle"# allow_protected_auth_supported# pin_cache_period# pin_expire_time## cached_certs##$ touch#( mutex&#, &pkcs11h_token_loginPU((token_idM(readonlyN (pinOmutex_lockedRslotC Tpin_size(UrvVsessionX  ((CK_ULONGpkcs11h_token_ensureAccessۚU))token_id)user_data )mask_promptmutex_lockedsessionrvslotC Sx!pkcs11h_token_freeTokenIdList/U**token_id_list_id*x**pkcs11h_token_id_list_t pkcs11h_token_id_list_s * next*# token_id# **pkcs11h_token_enumTokenIds)01U,,method',p_token_id_list( mutex_locked+token_id_list*.current_provider /rv0C..slots,Kslotnum(Lslot_indexC M@SSentry*minfo-nC}O}O}sessionV}qhqhentry*foundx! *, CK_SLOT_ID_PTRCK_TOKEN_INFO $-  .-3-x!_pkcs11h_util_fixupFixedStringz-)-8-=-(_pkcs11h_session_logout-z-(__pkcs11h_session_touch--(Sx! _pkcs11h_session_reset'.----(_pkcs11h_session_releaseX.'. pX. (b._pkcs11h_session_getSessionByTokenId.].g."n . _pkcs11h_session_getSlotList/....x!  / /_pkcs11h_log7/// m&7/_pkcs11h_threading_mutexReleaset/#manufacturerIDQ#handlej#f"#should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread"# "CK_SESSION_HANDLE$pkcs11h_certificate_id_list_tpkcs11h_certificate_id_list_s$next_$#certificate_id# $unsigned short$uint16_t uint8_t  %__pthread_mutex_flag1$#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type$#__pthread_mutex_magic$# $% ' %__pthread_mutex_pad%#uint32_t  "&__pthread_ownerpid%#__pthread_lockword%#unsigned long long"&upad64_t  &__pthread_mutex_lock64%#__pthread_mutex_lock32%#__pthread_mutex_owner648&#_pthread_mutex '__pthread_mutex_flags%#__pthread_mutex_lockG&#__pthread_mutex_data8&#&_pkcs11h_mutex_t _pkcs11h_session_sD C(next #reference_count#valid#provider$# token_id#session_handleG$#allow_protected_auth_supported#pin_cache_period#pin_expire_time/# cached_certs_$#$touch#(mutex'#, 3'CK_OBJECT_HANDLEpkcs11h_certificate_s8+)id#pin_cache_period#mask_private_mode#session # key_handleH(#operation_active#mutex'#mask_prompt#0user_dataj#4 _(+)pkcs11h_certificate_t0)CK_OBJECT_CLASSMCK_ATTRIBUTE g)) ' H(CK_ULONG g) ) '__pkcs11h_certificate_updateCertificateIdDescription ةUI*certificate_idseparatorN*xunknownX*t I* S*__pkcs11h_certificate_getKeyAttributesbU++certificatemutex_lockedrvop_succeedlogin_retrykey_attrs,iTiTikey_attrs_sign$,key_attrs_sign_recover$,key_attrs_decrypt$,key_attrs_unwrap$,C0) g)0, 'CK_BBOOL ,_pkcs11h_certificate_validateSession^pvU,,certificate]rvd0)_pkcs11h_certificate_resetSessionuU--certificate-public_only -session_mutex_lockedmutex_lockedsession_validcert_handleH(rv0)__pkcs11h_certificate_doPrivateOperationٸU//certificate k0op  p0mech_type 0source0source_size0target0p_target_size mutex_lockedmech0wrap_attrs_true,classQ)keytype0wrap_attrs0wrap_value0$wrap_keyH('rv)login_retry*op_succeed++h7\7\size)LC0)__pkcs11h_private_op_ek0__pkcs11h_private_op_sign__pkcs11h_private_op_sign_recover__pkcs11h_private_op_decrypt__pkcs11h_private_op_unwrap/ u0z0 0CK_MECHANISMCK_KEY_TYPE g)$0 ' g) 0 'pkcs11h_certificate_freeCertificateId$U:1certificate_id#pkcs11h_certificate_duplicateCertificateIdGAU11toE1fromF rvHpkcs11h_certificate_setCertificateIdCertificateBlobPbU\2\2certificate_idk2blob p2blob_sizerv a2f2pkcs11h_certificate_freeCertificatepU20)certificatepkcs11h_certificate_lockSessionU0303certificaterv0)pkcs11h_certificate_releaseSession%U33certificaterv0)pkcs11h_certificate_sign0uUi4i4certificaten4mech_type }4source4source_size4target4p_target_sizerv0) s4x40pkcs11h_certificate_signRecoverZU_5_5certificateTd5mech_typeU s5sourceVx5source_sizeW}5targetX5p_target_sizeYrv[0) i5n50pkcs11h_certificate_decryptUQ6Q6certificateV6mech_type e6sourcej6source_sizeo6targett6p_target_sizerv0) [6`60pkcs11h_certificate_unwrap eUB7B7certificateG7mech_type V7source[7source_size`7targete7p_target_sizerv0) L7Q70pkcs11h_certificate_signAnypUJ8J8certificateO8mech_type ^8sourcec8source_sizeh8targetm8p_target_sizervacked0) T8Y80pkcs11h_certificate_decryptAnyAUU9U9certificateZ9mech_type i9sourcen9source_sizes9targetx9p_target_sizervacked0) _9d90pkcs11h_certificate_createPU::certificate_id:user_data :mask_prompt:pin_cache_period:p_certificatehave_mutexmutex_lockedcertificate0)rvj +):pkcs11h_certificate_getPromptMaskv|U;;certificateu0)pkcs11h_certificate_setPromptMaskUs;s;certificate~x;mask_prompt 0)pkcs11h_certificate_getUserData\Uj;;certificate0)pkcs11h_certificate_setUserData`U7<7<certificate<<user_data 0)jpkcs11h_certificate_getCertificateIdU<<certificate<p_certificate_id rv0)pkcs11h_certificate_getCertificateBlobU>>certificate>certificate_blob !>p_certificate_blob_sizemutex_lockedrvcertifiate_blob_size_maxG\\op_succeedlogin_retry0)0pkcs11h_certificate_ensureCertificateAccess3U%?%?certificate2mutex_locked_cert5mutex_locked_sess6validCert8rv9hH(M0)pkcs11h_certificate_ensureKeyAccessqU??certificatemutex_locked_certmutex_locked_sessrvvalid_key0)_pkcs11h_certificate_enumSessionCertificates .U B Bsession Buser_data  Bmask_prompt mutex_locked op_succeed login_retry rv S__cert_filter_classQ)) cert_filterB* objects). objects_found)/ i)1 certificate_idD new_element_$E attrs*BG BC  j g) *B ' g);B '__pkcs11h_certificate_splitCertificateIdList 0UDDcert_id_all Dp_cert_id_issuers_list  Dp_cert_id_end_list info_s nextD#e#is_issuer#Dinfo_tcert_id_issuers_list_$ cert_id_end_list_$ entry_$ head C info C rv kZZnew_info C k:}%}%info2 C A'SSnew_entry_$! V^{^{entry CU B_$ $DD Bpkcs11h_certificate_freeCertificateIdListp OUGEGEcert_id_listo _id_$q !x_$~ _$pkcs11h_certificate_enumTokenCertificateIds PUmFmFtoken_id rFmethod  wFuser_data |Fmask_prompt Fp_cert_id_issuers_list Fp_cert_id_end_list mutex_locked session  rv jDDpkcs11h_certificate_enumCertificateIds )U5I5Imethod :Iuser_data  ?Imask_prompt DIp_cert_id_issuers_list IIp_cert_id_end_list mutex_locked cert_id_list_$ current_provider$ current_session  rv \GGslotsNI- slotnum). slot_index/ `sssession E token_idF infocIG \hwSwSwSSSentry_$ S>>new_entry_$ BjDD CK_SLOT_ID_PTR| CK_TOKEN_INFO- |I _pkcs11h_token_getTokenIdIwIIC( _pkcs11h_session_logoutIIC(j _pkcs11h_session_login?JIIIIIC( _pkcs11h_session_validateqJ?JC( _pkcs11h_session_getObjectByIdJqJvJ{JJJC( _pkcs11h_session_releaseKJ C(K _pkcs11h_session_getSessionByTokenIdMKK KC(M RKWK  fK  _pkcs11h_session_findObjectsKMK\KaKkKpK _pkcs11h_session_freeObjectAttributesLKKC( _pkcs11h_session_getObjectAttributes\LLL LLB$fK _pkcs11h_session_getSlotListL\LaLfLpK LL!_pkcs11h_logLLL" &L _pkcs11h_threading_mutexFreeMLL _pkcs11h_threading_mutexReleaseRMML _pkcs11h_threading_mutexLockMRML _pkcs11h_threading_mutexInitMMb M MM0b MM _pkcs11h_mem_duplicate"NMMMMb "N 'N,N _pkcs11h_mem_free[N1Nb [N `NeN _pkcs11h_mem_mallocNjNoN|I pkcs11h_token_duplicateTokenIdNNN % pkcs11h_token_freeTokenIdON O pkcs11h_getMessageOHOO' HOtm$Otm_sec#tm_min#tm_hour#tm_mday# tm_mon#tm_year#tm_wday#tm_yday#tm_isdst# RO localtimeO PMORO P  asctimeP7PP 7P AP!__assertmPbslot crv!d   had_sleep_  8 8last_checksum!is_first_time_ n \ \current_checksum!i!slots!slotnum!  info! Bvoid1~!_pkcs11h_provider_tintXPKCS11H_BOOLcharlong r z r!z _CK_VERSIONmajor2#minor2#!9CK_C_Initialize!9CK_C_Finalize 2 =z!CK_FLAGS 2 ]z_CK_INFOLcryptokiVersion#manufacturerID,#flags=#$libraryDescriptionL#(libraryVersion#H]!CK_C_GetInfo !&&CK_C_GetFunctionList!!f2FFKfCK_C_GetSlotList 2@z? 2 z_CK_SLOT_INFOh'slotDescription#manufacturerID#@flags=#`hardwareVersion#dfirmwareVersion#f!B!',BCK_C_GetSlotInfo 2 oz 2 z 2z 2z 2z_CK_TOKEN_INFOd label^#manufacturerIDo# model#@serialNumber#Pflags=#`ulMaxSessionCount!#dulSessionCount!#hulMaxRwSessionCount!#lulRwSessionCount!#pulMaxPinLen!#tulMinPinLen!#xulTotalPublicMemory!#|ulFreePublicMemory!#ulTotalPrivateMemory!#ulFreePrivateMemory!#hardwareVersion#firmwareVersion#utcTime#! !d i  CK_C_GetTokenInfo! !FF  CK_C_GetMechanismList_CK_MECHANISM_INFO + ulMinKeySize!#ulMaxKeySize!#flags=# !K !!+ 0 K CK_C_GetMechanismInfo2! !l !l q  CK_C_InitToken! !l !  CK_C_InitPIN! !l !l !  CK_C_SetPIN!5 !!9 !_ !!95 F: _ CK_C_OpenSession! !{  CK_C_CloseSession! !  CK_C_CloseAllSessions!CK_SLOT_ID!CK_STATE_CK_SESSION_INFOU slotID #state #flags=#ulDeviceError!#  !p !U Z p CK_C_GetSessionInfo! !l F  CK_C_GetOperationState! !l !!!  CK_C_SetOperationState!3 !!l ! 3 CK_C_Login!Z !I Z CK_C_Logout!CK_ATTRIBUTE_TYPE_CK_ATTRIBUTE  typeq #pValue9#ulValueLen!# ! ! !F  CK_C_CreateObject!5!! !F5CK_C_CopyObject!f!!PfCK_C_DestroyObject!!!FCK_C_GetObjectSize!!! !CK_C_GetAttributeValue!!! !CK_C_SetAttributeValue!\! !A\CK_C_FindObjectsInit!!F!F|CK_C_FindObjects!!CK_C_FindObjectsFinal!CK_MECHANISM_TYPE_CK_MECHANISM Tmechanism#pParameter9#ulParameterLen!#!t!T!YtCK_C_EncryptInit!!l !l FCK_C_Encrypt!!l !l FCK_C_EncryptUpdate!+!l F+CK_C_EncryptFinal!c!T!HcCK_C_DecryptInit!!l !l FCK_C_Decrypt!!l !l FCK_C_DecryptUpdate!!l FCK_C_DecryptFinal!M!T7MCK_C_DigestInit!!l !l FhCK_C_Digest!!l !CK_C_DigestUpdate!!!CK_C_DigestKey!'!l F 'CK_C_DigestFinal!^!T!C^CK_C_SignInit!!l !l FwCK_C_Sign!!l !CK_C_SignUpdate!!l FCK_C_SignFinal!7!T!7CK_C_SignRecoverInit!|!l !l FW|CK_C_SignRecover!!T!CK_C_VerifyInit!!l !l !CK_C_Verify!%!l ! %CK_C_VerifyUpdate!]!l !B]CK_C_VerifyFinal!!T!yCK_C_VerifyRecoverInit!!l !l FCK_C_VerifyRecover!!l !l FCK_C_DigestEncryptUpdate!g!l !l FBgCK_C_DecryptDigestUpdate!!l !l FCK_C_SignEncryptUpdate!!l !l FCK_C_DecryptVerifyUpdate!@!T !F@CK_C_GenerateKey!!T ! !FF\CK_C_GenerateKeyPair!!T!!l FCK_C_WrapKey!&!T!l ! !F&CK_C_UnwrapKey!j!T! !F@jCK_C_DeriveKey!!l !CK_C_SeedRandom!!l !CK_C_GenerateRandom!!CK_C_GetFunctionStatus!8!'8CK_C_CancelFunction!r!F9WrCK_C_WaitForSlotEvent_CK_FUNCTION_LISTversion#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList+#C_GetSlotListk#C_GetSlotInfoG#C_GetTokenInfo #C_GetMechanismList # C_GetMechanismInfoP #$C_InitToken #(C_InitPIN #,C_SetPIN #0C_OpenSessiond #4C_CloseSession #8C_CloseAllSessions #<C_GetSessionInfou #@C_GetOperationState #DC_SetOperationState #HC_Login8 #LC_Logout_ #PC_CreateObject #TC_CopyObject:#XC_DestroyObjectk#\C_GetObjectSize#`C_GetAttributeValue#dC_SetAttributeValue$#hC_FindObjectsInita#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInity#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinal0#C_DecryptInith#C_Decrypt#C_DecryptUpdate#C_DecryptFinal#C_DigestInitR#C_Digest#C_DigestUpdate#C_DigestKey#C_DigestFinal,#C_SignInitc#C_Sign#C_SignUpdate#C_SignFinal#C_SignRecoverInit<#C_SignRecover#C_VerifyInit#C_Verify#C_VerifyUpdate*#C_VerifyFinalb#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate##C_DecryptDigestUpdatel#C_SignEncryptUpdate#C_DecryptVerifyUpdate#C_GenerateKeyE#C_GenerateKeyPair#C_WrapKey#C_UnwrapKey+#C_DeriveKeyo#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus #C_CancelFunction=#C_WaitForSlotEventw# CK_FUNCTION_LIST_PTRR_pkcs11h_thread_t_pkcs11h_provider_sT~!next>#enabled_#reference#manufacturerID#handle9#f#should_finalize_#allow_protected_auth_#cert_is_private_#mask_private_modeR#mask_decrypt_modeR#slot_event_methodR#slot_poll_intervalR#slotevent_thread #( !CK_RV!CK_ULONGFCK_SLOT_ID_PTRCK_TOKEN_INFO__pkcs11h_slotevent_managerDU9"9pCfirst_time_E VK v' v'current_provider>\ Kcurrent_provider>_pkcs11h_slotevent_initU!"rv!_pkcs11h_slotevent_notifyU!_pkcs11h_slotevent_terminate_force0U!_pkcs11h_slotevent_terminate0U!~!2F{#!_pkcs11h_session_getSlotList!#q#v###Rr##_pkcs11h_log###R#_pkcs11h_threading_threadJoin!:$$#9P$9?$P$1_pkcs11h_threading_threadStart!$:$U$Z$2uint8_t $$zunsigned short$uint16_t8%__pthread_cond_flag$#__pthread_cond_type$#__pthread_cond_magic$#unsigned long long8%upad64_t_pthread_cond%__pthread_cond_flags$#__pthread_cond_dataN%#]%pthread_cond_t`&__pthread_mutex_flag1$#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type$#__pthread_mutex_magic$# $q&z&__pthread_mutex_pad`&#Ruint32_t&__pthread_ownerpid&#__pthread_lockword&#H'__pthread_mutex_lock64q&#__pthread_mutex_lock32&#__pthread_mutex_owner64N%#_pthread_mutex'__pthread_mutex_flags%#__pthread_mutex_lock&#__pthread_mutex_dataN%#H'pthread_mutex_t('cond%#mut'#''_pkcs11h_threading_condFree!'(''R_pkcs11h_threading_condWait!e('(,('_pkcs11h_threading_condInit!(e('_pkcs11h_threading_condSignal!((R_pkcs11h_threading_sleep((!r)pkcs11h_getMessage)1)(11)6);)_pkcs11h_mem_free!@)xA! pkcs11h-core.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-core.o pkcs11h-core.c -W0,-xp.XAKk4Dpg4XaOlu9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dpg4XaOlu9.;backend;raw;cd;DBG_GEN 5.2.7^intPKCS11H_BOOL_pkcs11h_provider_tcharlong!  void unsigned char _CK_VERSIONX major# minor#unsigned long Xz izCK_C_Initialize X CK_C_Finalize XCK_FLAGS  _CK_INFOLp cryptokiVersion(# manufacturerID# flags#$ libraryDescription#( libraryVersion(#H X puCK_C_GetInfo& X CK_C_GetFunctionListX X   CK_C_GetSlotList@&? 7 _CK_SLOT_INFOh slotDescription# manufacturerID&#@ flags#` hardwareVersion(#d firmwareVersion(#f7 X X CK_C_GetSlotInfo  $5F _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber$#P flags#` ulMaxSessionCountX#d ulSessionCountX#h ulMaxRwSessionCountX#l ulRwSessionCountX#p ulMaxPinLenX#t ulMinPinLenX#x ulTotalPublicMemoryX#| ulFreePublicMemoryX# ulTotalPrivateMemoryX# ulFreePrivateMemoryX# hardwareVersion(# firmwareVersion(# utcTime5#F X X CK_C_GetTokenInfo XJ X  /JCK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySizeX# ulMaxKeySizeX# flags#k X X X CK_C_GetMechanismInfo X$ X  X $CK_C_InitToken XY X  X>YCK_C_InitPIN X X  X  XqCK_C_SetPIN X X X  X X X   CK_C_OpenSession X X  CK_C_CloseSession XM X< M CK_C_CloseAllSessionsXCK_SLOT_IDXCK_STATE _CK_SESSION_INFO slotIDn # state # flags# ulDeviceErrorX#  X X   CK_C_GetSessionInfo X= X  " = CK_C_GetOperationState X X  X X X_  CK_C_SetOperationState X X X  X  CK_C_Login X X  CK_C_LogoutXCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE a type # pValue# ulValueLenX# X X a X f  CK_C_CreateObject X X X a X   CK_C_CopyObject X X X  CK_C_DestroyObject X2 X X  2 CK_C_GetObjectSize Xp X X a XP p CK_C_GetAttributeValue X X X a X  CK_C_SetAttributeValue X X a X  CK_C_FindObjectsInit X/ X  X  / CK_C_FindObjects X\ XK \ CK_C_FindObjectsFinalXCK_MECHANISM_TYPE _CK_MECHANISM  mechanism} # pParameter# ulParameterLenX# X X X CK_C_EncryptInit XH X  X  #HCK_C_Encrypt X X  X  `CK_C_EncryptUpdate X X  CK_C_EncryptFinal X X XCK_C_DecryptInit X7 X  X  7CK_C_Decrypt Xt X  X  OtCK_C_DecryptUpdate X X  CK_C_DecryptFinal X X CK_C_DigestInit X  X  X   CK_C_Digest XR X  X7RCK_C_DigestUpdate X X XoCK_C_DigestKey X X  CK_C_DigestFinal X X XCK_C_SignInit X/ X  X   /CK_C_Sign X_ X  XD_CK_C_SignUpdate X X  zCK_C_SignFinal X X XCK_C_SignRecoverInit X X  X  CK_C_SignRecover XF X X+FCK_C_VerifyInit X X  X  XaCK_C_Verify X X  XCK_C_VerifyUpdate X X  XCK_C_VerifyFinal X' X X 'CK_C_VerifyRecoverInit Xn X  X  InCK_C_VerifyRecover X X  X  CK_C_DigestEncryptUpdate X X  X  CK_C_DecryptDigestUpdate XC X  X  CCK_C_SignEncryptUpdate X X  X  eCK_C_DecryptVerifyUpdate X X a X CK_C_GenerateKey X# X a X a X  #CK_C_GenerateKeyPair Xm X X X  CmCK_C_WrapKey X X X  X a X CK_C_UnwrapKey X X X a X CK_C_DeriveKey X2 X  X2CK_C_SeedRandom Xh X  XMhCK_C_GenerateRandom X XCK_C_GetFunctionStatus X XCK_C_CancelFunction X X  CK_C_WaitForSlotEvent _CK_FUNCTION_LIST version(# C_Initialize# C_Finalize# C_GetInfo# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismListO# C_GetMechanismInfo#$ C_InitToken)#( C_InitPIN^#, C_SetPIN#0 C_OpenSession#4 C_CloseSession$ #8 C_CloseAllSessionsR #< C_GetSessionInfo #@ C_GetOperationStateB #D C_SetOperationState #H C_Login #L C_Logout #P C_CreateObject #T C_CopyObject #X C_DestroyObject #\ C_GetObjectSize7 #` C_GetAttributeValueu #d C_SetAttributeValue #h C_FindObjectsInit #l C_FindObjects4 #p C_FindObjectsFinala #t C_EncryptInit #x C_EncryptM#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInit# C_Decrypt<# C_DecryptUpdatey# C_DecryptFinal# C_DigestInit# C_Digest%# C_DigestUpdateW# C_DigestKey# C_DigestFinal# C_SignInit# C_Sign4# C_SignUpdated# C_SignFinal# C_SignRecoverInit# C_SignRecover# C_VerifyInitK# C_Verify# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInit,# C_VerifyRecovers# C_DigestEncryptUpdate# C_DecryptDigestUpdate# C_SignEncryptUpdateH# C_DecryptVerifyUpdate# C_GenerateKey# C_GenerateKeyPair(# C_WrapKeyr# C_UnwrapKey# C_DeriveKey# C_SeedRandom7# C_GenerateRandomm# C_GetFunctionStatus# C_CancelFunction# C_WaitForSlotEvent #CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t _pkcs11h_provider_sT next# enabled# reference# manufacturerID# handle# f# should_finalize# allow_protected_auth# cert_is_private# mask_private_mode# mask_decrypt_mode# slot_event_method# slot_poll_interval# slotevent_thread#4%_pkcs11h_session_tN!_ p! pkcs11h_token_id_sd display;# manufacturerIDN# model_# serialNumberp# label# pkcs11h_token_id_tXCK_SESSION_HANDLEtime_t!pkcs11h_certificate_id_list_t CK_BYTE_PTRsize_t pkcs11h_certificate_id_sP! token_id # displayNameq # attrCKA_ID # attrCKA_ID_size # certificate_blob# certificate_blob_size # P!pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s! nextM # certificate_idU!#t!unsigned short!uint16_t uint8_t " __pthread_mutex_flag1!# __pthread_mutex_flag2!# __pthread_mutex_ceiling!# __pthread_mutex_type!# __pthread_mutex_magic!#!"" __pthread_mutex_pad"#uint32_t # __pthread_ownerpid"# __pthread_lockword"#unsigned long long#upad64_t# __pthread_mutex_lock64"# __pthread_mutex_lock32"# __pthread_mutex_owner64)## _pthread_mutex $ __pthread_mutex_flags!# __pthread_mutex_lock8## __pthread_mutex_data)###_pkcs11h_mutex_t _pkcs11h_session_sD4% next"# reference_count# valid# provider# token_id # session_handle( # allow_protected_auth_supported# pin_cache_period# pin_expire_time@ # cached_certsM #$ touch#( mutex $#,$$C%H%n% 9% >% M% R%n%pkcs11h_hook_log_t% %%%pkcs11h_hook_slotevent_t  % % % % %%%pkcs11h_hook_token_prompt_t 1& j& & "& '& ,& 6& ;&@&j&pkcs11h_hook_pin_prompt_t 7' log_data# slotevent_data# token_prompt_data# pin_prompt_data# logs%# slotevent%# token_prompt%# pin_prompto&#Hl' global $# session $# cache $#0!}'' __pthread_cond_flagl'# __pthread_cond_type!# __pthread_cond_magic!# _pthread_cond)( __pthread_cond_flags}'# __pthread_cond_data)##'pthread_cond_t#pthread_mutex_t(u( cond)(# mut>(#T(_pkcs11h_cond_t8( initialized# should_terminate# skip_event# cond_eventu(# thread#4 _pkcs11h_data_s) initialized# pin_cache_period# providers# sessions"# hooks&# allow_protected_auth#0 max_retries#4 mutexes7'#8 safefork# slotevent(#()_pkcs11h_data_t_g_pkcs11h_data)_g_pkcs11h_loglevel|pkcs11h_getMessage Um*h*~*rvh*XCK_RVr*pkcs11h_getVersion  Upkcs11h_getFeatures  U*featurespkcs11h_initialize Ur*+has_mutex_globalhas_mutex_cachehas_mutex_sessionrvr*data)pkcs11h_terminate)Ur*,""current_providercurrent"1BzBzcurrentpkcs11h_setLogLevel0bU,,flagspkcs11h_setForkModep4Ur*--safepkcs11h_getLogLevel@Upkcs11h_setLogHook Ur*--hook -global_data  s%pkcs11h_setSlotEventHookUr*--hook-global_data %pkcs11h_setPINPromptHook1 (Ur*P.P.hook/U.global_data0 o&pkcs11h_setTokenPromptHook@08Ur*..hook>.global_data? %pkcs11h_setPINCachePeriodN@Ur*//pin_cache_periodMpkcs11h_setMaxLoginRetriesZUr*d/d/max_retriesYpkcs11h_setProtectedAuthenticationfUr*//allow_protected_authepkcs11h_addProviderx"Ur*11referenceq1provider_locationr 1allow_protected_auths1mask_private_modet1slot_event_methodu1slot_poll_intervalv1cert_is_privatew mutex_lockedzmypid1pprovidergflinitargs@3pinitargs`3info3rvr*^!!!!!!last1111pid_t X2 222CK_CREATEMUTEX XD2 32D2CK_DESTROYMUTEX Xp2 _2p2CK_LOCKMUTEX X2 22CK_UNLOCKMUTEX _CK_C_INITIALIZE_ARGS@3 CreateMutex2# DestroyMutexI2# LockMutexu2# UnlockMutex2# flags# pReserved#2CK_C_INITIALIZE_ARGS2[3CK_C_INITIALIZE_ARGS_PTRCK_INFOpkcs11h_removeProviderS"&Ur*44referenceRcurrent_session"Uhas_mutex_globalVhas_mutex_cacheWhas_mutex_sessionXproviderZrvr*[44pkcs11h_forkFixup&&Ur*pkcs11h_plugAndPlay&c(Ur*W5mypid1'5(C'5(C'5(currentslot_event_activepkcs11h_logout*p()Ur*5current_session"+rvr*,(X)(G)(G)_rvr*<_pkcs11h_logc)*UR6R6flags`a6formata ...bargsf6dW6\6va_list __pkcs11h_hooks_default_log**U66global_data6flags 7formatf6args66__pkcs11h_hooks_default_token_prompt*7+U77global_data7user_data 7token7retry __pkcs11h_hooks_default_pin_prompt@++UW8W8global_data\8user_data a8tokenf8retryk8pinp8pin_max 1& __pkcs11h_threading_atfork_prepare+>,U __pkcs11h_threading_atfork_parent@,,U __pkcs11h_threading_atfork_child,-U__pkcs11h_forkFixup -.Ur*99activate_sloteventmutex_lockedmypid1-w.-w.-w.current !_pkcs11h_slotevent_terminater*!_pkcs11h_slotevent_terminate_forcer*!_pkcs11h_slotevent_notifyr*!_pkcs11h_slotevent_initr*4%"_pkcs11h_session_logoutr*: ^:!getpid1!"pkcs11h_certificate_freeCertificateIdListr*: :1&::#_pkcs11h_util_fixupFixedString1; : : : 1;6;;;"_pkcs11h_mem_freer*j; @; j;o;t;"_pkcs11h_mem_mallocr*; y; ~;$_pkcs1h_threading_mutexReleaseAll$_pkcs1h_threading_mutexLockAll#;"_pkcs11h_threading_mutexFreer*4< ;;"_pkcs11h_threading_mutexReleaser*l< 4<;"_pkcs11h_threading_mutexLockr*< l<;"_pkcs11h_threading_mutexInitr*< <#_pkcs11h_threading_sleep= <%=% =%="pthread_atforkG= = = ="pkcs11h_token_freeTokenIdr*y= G= = y=~= = ===== = = = = ===>1& ?> = > > > >>I>N>]>b> > D> S> X> g> l>q> pkcs11h_crypto_engine_s S? global_data# initialize=# uninitialize=# certificate_get_expiration=# certificate_get_dn?># certificate_is_issuer>#>S?X?"pkcs11h_engine_setCryptor*? ]?"dlclose? ?"dlsym?  ??"dlopen? ? "getpagesizes2%@ ? "getpagesizes2K@ ? K@U@#__assert@ P@ Z@ @"strncpy1&@ 1& @ @"strlen @ @@@"strcmpA @ @"memset+A    +A"memmoveZA  0A ZA&getenv1& _A3pkcs11h-data.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-data.o pkcs11h-data.c -W0,-xp.XAKk4Dph4XaOVz9.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaOVz9.;backend;raw;cd;DBG_GEN 5.2.7s_pkcs11h_data_getObjectC.C1U>&session?M&application@ \&labelAa&p_handleBclassf&Dfilter&Eobjects&Jobjects_found&KrvLC unsigned longCK_RV9&_pkcs11h_session_tintPKCS11H_BOOL; _pkcs11h_provider_tcharlong(  !9  void 9unsigned char _CK_VERSIONmajorF#minorF#A CK_C_InitializeA CK_C_Finalize F  CK_FLAGS F   _CK_INFOLcryptokiVersionW#manufacturerID#flags#$libraryDescription#(libraryVersionW#H  CK_C_GetInfo D  CK_C_GetFunctionList F CK_C_GetSlotList F@D ? F U  _CK_SLOT_INFOhslotDescription3#manufacturerIDD#@flags#`hardwareVersionW#dfirmwareVersionW#f U CK_C_GetSlotInfo F   F 1  FB  FS  Fd  _CK_TOKEN_INFOlabel#manufacturerID # model1#@serialNumberB#Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersionW#firmwareVersionW#utcTimeS# d0 0CK_C_GetTokenInfoh MhCK_C_GetMechanismList _CK_MECHANISM_INFO ulMinKeySize#ulMaxKeySize#flags#  CK_C_GetMechanismInfo FB   " B CK_C_InitTokenw   \ w CK_C_InitPIN     CK_C_SetPIN A  A   CK_C_OpenSession=  , = CK_C_CloseSessionk  Z k CK_C_CloseAllSessionsCK_SLOT_IDCK_STATE _CK_SESSION_INFO slotID #state #flags#ulDeviceError# !  ! CK_C_GetSessionInfo[   @ [ CK_C_GetOperationState   }  CK_C_SetOperationState    CK_C_Login   CK_C_LogoutCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  type" #pValueA#ulValueLen# :     CK_C_CreateObject    CK_C_CopyObject    CK_C_DestroyObjectP  5 P CK_C_GetObjectSize   n  CK_C_GetAttributeValue    CK_C_SetAttributeValue    CK_C_FindObjectsInitM -MCK_C_FindObjectsz izCK_C_FindObjectsFinalCK_MECHANISM_TYPE _CK_MECHANISM mechanism#pParameterA#ulParameterLen# % %CK_C_EncryptInitf   AfCK_C_Encrypt   ~CK_C_EncryptUpdate  CK_C_EncryptFinal CK_C_DecryptInitU   0UCK_C_Decrypt   mCK_C_DecryptUpdate  CK_C_DecryptFinal CK_C_DigestInit>   >CK_C_Digestp  UpCK_C_DigestUpdate CK_C_DigestKey  CK_C_DigestFinal CK_C_SignInitM   (MCK_C_Sign}  b}CK_C_SignUpdate  CK_C_SignFinal CK_C_SignRecoverInit-   -CK_C_SignRecoverd IdCK_C_VerifyInit   CK_C_Verify  CK_C_VerifyUpdate  CK_C_VerifyFinalE *ECK_C_VerifyRecoverInit   gCK_C_VerifyRecover   CK_C_DigestEncryptUpdate   CK_C_DecryptDigestUpdatea   <aCK_C_SignEncryptUpdate   CK_C_DecryptVerifyUpdate  CK_C_GenerateKeyA   ACK_C_GenerateKeyPair  aCK_C_WrapKey   CK_C_UnwrapKey  CK_C_DeriveKeyP  5PCK_C_SeedRandom  kCK_C_GenerateRandom CK_C_GetFunctionStatus CK_C_CancelFunction#A #CK_C_WaitForSlotEvent_CK_FUNCTION_LISTversionW#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList#C_GetSlotInfo#C_GetTokenInfo5#C_GetMechanismListm# C_GetMechanismInfo #$C_InitTokenG #(C_InitPIN| #,C_SetPIN #0C_OpenSession #4C_CloseSessionB #8C_CloseAllSessionsp #<C_GetSessionInfo& #@C_GetOperationState` #DC_SetOperationState #HC_Login #LC_Logout #PC_CreateObject #TC_CopyObject #XC_DestroyObject #\C_GetObjectSizeU #`C_GetAttributeValue #dC_SetAttributeValue #hC_FindObjectsInit#lC_FindObjectsR#pC_FindObjectsFinal#tC_EncryptInit*#xC_Encryptk#|C_EncryptUpdate#C_EncryptFinal#C_DecryptInit#C_DecryptZ#C_DecryptUpdate#C_DecryptFinal#C_DigestInit#C_DigestC#C_DigestUpdateu#C_DigestKey#C_DigestFinal#C_SignInit#C_SignR#C_SignUpdate#C_SignFinal#C_SignRecoverInit#C_SignRecover2#C_VerifyIniti#C_Verify#C_VerifyUpdate#C_VerifyFinal#C_VerifyRecoverInitJ#C_VerifyRecover#C_DigestEncryptUpdate#C_DecryptDigestUpdate#C_SignEncryptUpdatef#C_DecryptVerifyUpdate#C_GenerateKey#C_GenerateKeyPairF#C_WrapKey#C_UnwrapKey#C_DeriveKey #C_SeedRandomU#C_GenerateRandom#C_GetFunctionStatus#C_CancelFunction#C_WaitForSlotEvent(#CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t_pkcs11h_provider_sT; next#enabled#reference#manufacturerID(#handleA#f#should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread# S  !d  u    !  pkcs11h_token_id_sd!display@ #manufacturerIDS #modeld #serialNumberu #label # !pkcs11h_token_id_tCK_SESSION_HANDLE time_t"pkcs11h_certificate_id_list_t!  CK_BYTE_PTRsize_t pkcs11h_certificate_id_sU"token_id!#displayNamev!#attrCKA_ID!#attrCKA_ID_size!#certificate_blob #certificate_blob_size!# !U"pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s"nextR!#certificate_idZ"# y"unsigned short"uint16_t Fuint8_t  #__pthread_mutex_flag1"#__pthread_mutex_flag2"#__pthread_mutex_ceiling"#__pthread_mutex_type"#__pthread_mutex_magic"# "#  #__pthread_mutex_pad##uint32_t  $__pthread_ownerpid##__pthread_lockword##unsigned long long$upad64_t  $__pthread_mutex_lock64##__pthread_mutex_lock32##__pthread_mutex_owner64.$# _pthread_mutex %__pthread_mutex_flags"#__pthread_mutex_lock=$#__pthread_mutex_data.$#$_pkcs11h_mutex_t _pkcs11h_session_sD9&next#reference_count#valid#provider# token_id!#session_handle-!#allow_protected_auth_supported#pin_cache_period#pin_expire_timeE!# cached_certsR!#$touch#(mutex%#, )% C&H& R&W&CK_OBJECT_CLASS: CK_ATTRIBUTE |&$& CK_OBJECT_HANDLE &CK_ULONGpkcs11h_data_getP15UZ(Z(token_id_(is_public n(application}(label(user_data(mask_prompt(blob (p_blob_size$attrs(handle&rvmutex_lockedsessionop_succeedlogin_retryblob_size_max!C! d(i( s(x(A ( |& ( pkcs11h_data_put.5U:Uq*q*token_id&v*is_public' *application(*label)*user_data**mask_prompt+*blob, *blob_size-$classf&/ck_true*0ck_false*1attrs*3handle&<rv=mutex_locked@sessionBop_succeedClogin_retryDC! {** **A !FCK_BBOOL |&H* pkcs11h_data_del`:=U , ,token_id,is_public  ,application/,label4,user_data9,mask_promptmutex_lockedsessionop_succeedlogin_retryhandle&rv! ,, %,*,Apkcs11h_data_freeDataIdList,=Q?U,F-data_id_list+_id,->#?>?>?x,:A-pkcs11h_data_id_list_t  pkcs11h_data_id_list_s A-next,#application,#label,# ,,pkcs11h_data_enumDataObjectsU`?DUw/w/token_idP|/is_publicQ /user_dataR/mask_promptS/p_data_id_listTmutex_lockedWsessionYdata_id_list,Zrv[op_succeed]login_retry^ACACACclassf&filter/objects&objects_found&i&A8CA%CA%Centry,attrs/C !A A-/ |& /  |&/ 9&A_pkcs11h_session_login0/////9&_pkcs11h_session_validate@009&_pkcs11h_session_releaseq0@0! 9&v0_pkcs11h_session_getSessionByTokenId0q0{09&: 00 0 _pkcs11h_session_findObjects)100000 _pkcs11h_session_freeObjectAttributesq1)1.19& _pkcs11h_session_getObjectAttributes1q1v1{11 11_pkcs11h_log211 $2_pkcs11h_threading_mutexRelease?222_pkcs11h_threading_mutexLockt2?29 t2 y2~2_pkcs11h_mem_free229 2 22_pkcs11h_mem_malloc222 2pkcs11h_getMessage2'32 '3 13__assert]3,363 ]3strlen!3b39 3memmoveAA3 pkcs11h-serialization.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-serialization.o pkcs11h-serialization.c -W0,-xp.XAKk4Dph4XaOF49.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaOF49.;backend;raw;cd;DBG_GEN 5.2.7}pkcs11h_token_serializeTokenIdED:GUszB3maxC -token_idDsources<FrvGn&HeMIE FE FE Ft&a FF,FF,FFKFF^FF^FFt&wunsigned longCK_RVchar unsignedsize_t&long S 8 !d 8 u 8  8 ! 8 pkcs11h_token_id_sddisplay@#manufacturerIDS#modeld#serialNumberu#label#pkcs11h_token_id_t  2 7M 8intpkcs11h_token_deserializeTokenId@G2JUp_token_idsz p#s&#targetstoken_idp1_szeMrvHIH{IH{Il&p2     8pkcs11h_certificate_serializeCertificateId(@JLLUvvsz%3max& certificate_id'rv)saved_max&*n&+_max&,   8unsigned charCK_BYTE_PTRpkcs11h_certificate_id_sctoken_id#displayName{#attrCKA_ID#attrCKA_ID_size&#certificate_blob#certificate_blob_size&#cpkcs11h_certificate_id_t hpkcs11h_certificate_deserializeCertificateIdoPLNUV[p_certificate_idmjszn certificate_idhprvqpr_szsc V ` e V_pkcs11h_certificate_newCertificateIdo _pkcs11h_token_newTokenIdpkcs11h_token_freeTokenId     * _pkcs11h_util_unescapeStringn  % /  s x *  _pkcs11h_util_escapeString n }      _pkcs11h_util_binaryToHex-      2 7 * _pkcs11h_util_hexToBinary} - < A }   _pkcs11h_mem_strdup   void   _pkcs11h_mem_free     _pkcs11h_mem_mallocR  !  W \ _pkcs11h_log R a pkcs11h_certificate_freeCertificateId    pkcs11h_getMessage     __assert1   M 1 strrchr[ 6 M [ strchr ` M  strncpy    strlen& (ipkcs11h-openssl.c /var/tmp/pkcs11-helper-1.09/lib /opt/sunstudio12.1/prod/bin/cc -DHAVE_CONFIG_H -I. -I.. -I../include -I../include -I/usr/local/include -L/usr/local/lib -g -I/usr/local/include -I/usr/local/include -c -KPIC -DPIC -o .libs/pkcs11h-openssl.o pkcs11h-openssl.c -W0,-xp.XAKk4Dph4XaO189.Xa;g;P;R=Sun C 5.10 SunOS_i386 Patch 142363-01 2009/07/15;G=.XAKk4Dph4XaO189.;backend;raw;cd;DBG_GEN 5.2.7˃__pkcs11h_openssl_get_openssl_sessionNOUCrrsasessionCintPKCS11H_BOOLunsigned char)longasn1_string_st length# type# data:# flags?# GASN1_INTEGERchar asn1_object_st" sn# ln# nid# length# data:# flags#ASN1_OBJECT"ASN1_BOOLEANGASN1_STRINGQGASN1_ENUMERATEDhGASN1_BIT_STRINGGASN1_OCTET_STRINGGASN1_PRINTABLESTRINGGASN1_T61STRINGGASN1_IA5STRINGGASN1_GENERALSTRINGGASN1_BMPSTRING-GASN1_UNIVERSALSTRINGGGASN1_UTCTIMEgGASN1_GENERALIZEDTIMEGASN1_VISIBLESTRINGGASN1_UTF8STRING ASN1_VALUE_stASN1_VALUE  ptr9# boolean># asn1_stringc# object4# integer# enumerated~# bit_string# octet_string# printablestring# t61string# ia5string # generalstring(# bmpstringB# universalstringb# utctimez# generalizedtime# visiblestring# utf8string# setc# sequencec# asn1_value#asn1_type_st type# value#ASN1_TYPEX509_algor_st  algorithm4# parameter#X509_ALGOR 9 ' ,1 ; @E e6JOstack_st num# data"# sorted# num_alloc# compe#jSTACKbuf_mem_st  length# data9# max#BUF_MEMunsigned longX509_name_st entries# modified# bytes# hash!# 2X509_NAMEGASN1_TIMEX509_val_st notBefore# notAfter#X509_VAL  ) r 6  :  ); j @ : E )o  t : y )   :  !bignum_st + d # top# dmax# neg# flags# 0 bignum_ctx: l + 5  G L q {   BIGNUMbn_mont_ctx_stH ri# RR # N # Ni #, n0!#@ flags#D & + v   G   <  + R  A )W unsigneda rsa_stX pad# version?# meth(# engineF# nK# eK# dK# pK# qK# dmp1K#$ dmq1K#( iqmpK#, ex_data#0 references#8 flags#< _method_mod_n#@ _method_mod_p#D _method_mod_q#H bignum_data9#L blinding#P mt_blinding#T r   \ a :m   ) r  5  a :a   void: ^ B G   c h  cb_1^ # cb_2 #bn_gencb_st vera # argB # cb #  + c  rsa_meth_st8  name# rsa_pub_enc6 # rsa_pub_decj # rsa_priv_enc # rsa_priv_dec # rsa_mod_expl # bn_mod_exp& # init< # finishR # flags#$ app_data9#( rsa_sign #, rsa_verify5 #0 rsa_keygen#4RSA_METHOD # engine_st-ENGINE9 crypto_ex_data_st  sk# dummy#PCRYPTO_EX_DATA BN_MONT_CTX bn_blinding_stBN_BLINDING  )DSA_SIG_st  rK# sK# 7+ aG <<A )f kp + + + + + + G     + + G   , B1 {:G c L dsa_method0  name# dsa_do_sign7# dsa_sign_setupa# dsa_do_verify# dsa_mod_exp# bn_mod_exp# init,# finishB# flags# app_data9#$ dsa_paramgen{#( dsa_keygen#,DSA_METHOD dsa_stD  pad# version?# write_params# pK# qK# gK# pub_keyK# priv_keyK# kinvK# rK#$ flags#( method_mont_p#, references#0 ex_data#4 meth#< engineF#@    :dh_stL  pad# version# pK# gK# length?# pub_keyK# priv_keyK# flags# method_mont_p# qK#$ jK#( seed:#, seedlen#0 counterK#4 references#8 ex_data#< methf#D engineF#H      M+ G   cR yh c ~dh_method$ Q name# generate_key# compute_key# bn_mod_expM# initc# finishy# flags# app_data9# generate_params# DH_METHOD Qa ec_key_stk  ptr9# rsa # dsa# dh# ecw#evp_pkey_st< type# save_type# references# pkey|# save_parameters# attributes#EVP_PKEY<X509_pubkey_st  algor# public_key# pkeyK#PX509_PUBKEYASN1_ENCODING_st  enc:# len?# modified#ASN1_ENCODINGx509_cinf_st4 version# serialNumber# signature# issuer# validity# subject# key# issuerUID# subjectUID# extensions#$ enc#(X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_stX509_POLICY_CACHE)B?x509_cert_aux_st trust# reject# alias# keyid# other#BX509_CERT_AUXx509_st\ cert_info# sig_alg# signature# valid# references# name9# ex_data# ex_pathlen?# ex_pcpathlen?#$ ex_flags!#( ex_kusage!#, ex_xkusage!#0 ex_nscert!#4 skid#8 akid#< policy_cache,#@ sha1_hash1#D aux#XX509    pkcs11h_certificate_s 8pkcs11h_certificate_t 8kY^kpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_sP> reference_count# initialized# x509# smart_rsa# orig_finish#D certificate=#H cleanup_hookp#L>pkcs11h_openssl_session_tr RSA cm__pkcs11h_openssl_get_pkcs11h_certificateOXPU=rsasessionC c__pkcs11h_openssl_dec`PSUflenfrom :torsapaddingcertificate=session_lockedmechrvtlen  )c!CK_MECHANISM_TYPE!CK_RVa size_t__pkcs11h_openssl_enc!0SUUflenfrom :torsapadding certificate=#session_locked$rv%tlen & )__pkcs11h_openssl_finishlU]VUersakopenssl_sessionCmpkcs11h_openssl_getX509`VgXU3 3 certificatecertificate_blob:certificate_blob_size x509rvd2i1B  = )8 = __pkcs11_openssl_d2i_tpkcs11h_openssl_createSessionpXYUC  certificatedef openssl_sessionCok =  pkcs11h_openssl_getCleanupHookY'f _f hf |f f f f f f~fffg g Kg g g g g g g h ,h >h Zh ah xh hh hqhh hh hi;i si i ii i j~j$j +j @jajhj nj tj {jj j j >k Fk Tk [k `kkk vk k k kkk k k kk lll`l#&l 2l 9l nEn Nn Un[n . /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-session.cpkcs11.h_pkcs11h-core.hpkcs11h-def.h_pkcs11h-threading.hpkcs11h-core.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.hpnnn n n n o Oo oo o o o o o o oo p p$pMp PpYp `p ip ppxp ppp p pq qCq {q qq q qq r r $r >r \rr rqrr rss %s 0sQss ss s s s t}'tFtFt Mt `ttt t tt t t Bu ~u u uu u v5v whw pw ~w ww w wPw3wx x(x 1x 8x ?x IxQx _x fx mxxx x xxx y  yy Ky y yy yy y yy zz =z=z Cz PztYz~izuz zzz zz z zz z{ { #{-{ ?{ N{W{ ^{ e{m{ u{ {{{ { {{{ { |4|;| B| {| | ||| | | } }}&} 7} >}t}t} z} }}} } } ~ K~ z~z~ ~ ~~ ~ ~~ - 4 `    bbz     €ʀ ''/ =HD~X?` n u~~  E    ~  4p w ~   ** 4 M P w |      7>aa i p x  ޅޅ  + 2 4;qq w   & 0`g n     Ȉ ψ ڈ  ! ( / `  ĉ Љ׉   %> D   ȊȊފ ,4 ; @G}}     < Fee l Z ? /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-token.cpkcs11.hpkcs11h-core.hpkcs11h-def.h_pkcs11h-core.h_pkcs11h-threading.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.hpkcs11h-token.h?ߌ  W zz     ' g  ׎    2 4;xx ~  # А 3 k    Б!; D K RZ h    3 w  ғғ ܓ     ) 0mm s     1 4P T [t x      4; B I P W ԖԖ ܖ  , 4 ;   & (/7 H OW e l    7 {    ' N PW_ p w  ʚʚ К  G    ś Л   y   ' 0fmt {   7 bb l   ȝ Н  :: @G SZ Ğ͞ Ӟ ڞ   b~& ' .7~CO Ve qx   y~П ܟ    ) / 6> I Z hSq~}5     Ӡ ڠ  &L /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-certificate.cpkcs11h-def.hstdio_iso.htime_iso.hpkcs11.hpkcs11h-certificate.hpkcs11h-core.h_pkcs11h-certificate.h_pkcs11h-core.h_pkcs11h-threading.htypes.hint_types.h@gn ҡҡ   $ Q X   4; s   ǣ   GN U   Ӥ  - PPo t {  ƥ ̥ߥ % |  Ȧ ަ  #1 9 <FO>` g l    ̧    G   . `  éé ʩ     [ ~~   ު   ! GG T       ӫ     ( 3 : <bb ip~   ĬĬ׬ ެ   QQ W p ӭ    & (/ee k     RRZ y    į    T `jr |  ð    ' .dd j ϱױ ޱ 3Q X _ f m   ' _      $ +7F _ dl ִ ܴ  X \ c h\'   ǵ ̵  E L   ƶ ȶ ϶ ԶV0  . 8@ H PX ` lpw ~  ȷ з    66 =PX \~hp  ŸŸ ˸ !_  ۹    - @ K \ f t   Ժۺ  _  ϻ   00 6 Pt {   7 o       QQ W p Ͽ  66 > I Z d o      G    ! ( g     0T [    O        'dd j    / g   , , 4 > k pw    ;    ' | |       D K    ? w      TT Z p    ' _   $ $ / NN g l     v    $ (vhp w |     S    ?           v\r t {   v  00 6 Pt {      K ~~         < Dc h oz       3 :B M ^ h s     1k t   K T `   ;    8 <Cyy      K      9 @ G\ c j r      l    ' . 0PW_ p w      ?      9 < C      # *2 C J       c        Z \ck        # *`` f     ((D L S_ f       '!- 0< E L U \ ck y     ! (0 >F N   ~    0W^ e l s z       2 8A M S Zvc~kq }  x~%{.~:A G SZ            ]~'*/ 8 ?H O V^ d m {|    !' g        y! @@ G Pt{     C{         ( 9 CN e        V] dk  ' VV ^ h r      |~  % , X `g sz    $+3     F~ **2 @ GP~\k w        & (1 7 >iG~Sq\~h5        J /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso../include/pkcs11-helper-1.0/usr/include/syspkcs11h-slotevent.cstdio_iso.h_pkcs11h-core.hpkcs11h-def.hpkcs11.h_pkcs11h-threading.htypes.hint_types.h09@ O a pv       - UU b   $$ =y     = E M uu |  q  8 ? F nn   6k     (0 4H \    66 Vv}     == PlY~e     'BKjjy  ~~    :: N r t    1PP d w     !( 0Qpp       xB /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/sys/usr/include/isopkcs11h-core.c_pkcs11h-core.hpkcs11h-def.hpkcs11.h_pkcs11h-threading.hpkcs11h-core.htypes.hpkcs11h-certificate.hstdio_iso.hint_types.hstdarg_iso.hpkcs11h-engines.h$, < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |            , < L \ l |                   ' FF K g lz        + 0 7 S X _              " ) 1 B I Q b iw ~   " ) HHW _p y~      $5? J iit  `$  !! 1 B Q l z|    ! 0Q] p  % , @a   !_      1o      A        0Q     ) 0 @a    1o    ?        R  V V      Z h t            $ H  P `  |          !  !$! T!T! ^! o! !!! ! !~!!! !! !" ")" 0"8" O" V"[""" "" " "## "# )# 0# 7# ># w# ## ### # #  $ $ $ =$ D$ K$Z$ b$s$ |$~$$$ $ $$ $ $$ % % (% 5%:%H% W% e%s% %%% %%% %% %~%% & & & 4& ;& C& Z& a&&& & &&&&&&'' C'J'a'p' x'' '~'~' ' ' '' '' (~ (~( ( (5(T(T( [( p((( ( (( ( (( ()() 9)A) G)qP)~X))) ) ))) * * .* ?*\*** ** * * * * ** * * * * (+(+ /+ @+a+ + + + + + + ++ + +,  , 4, 9,@,a, , , ,,, , , , -- - -A- H-P----- - -- -. ... 3. ;. @.rI.~Q.Y. p. w... .  = /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/iso/usr/include/syspkcs11h-data.cpkcs11.h_pkcs11h-core.hpkcs11h-def.h_pkcs11h-threading.hpkcs11h-core.htime_iso.hpkcs11h-certificate.hstdio_iso.htypes.hint_types.hpkcs11h-data.h...{/ / / / / / 70 f0f0 p0 0 0 0 00 0 00 00 02121 81 P1t11 1 11 1 1 1 1 1 ?2 w2 2 23 v3 v3 ~3 3 33 33 3 33P4 T4[4 b4j4 r4 44 444 4U404 4 5  5#5*525 C5 J5X5 `5 n5 u555 5 566 6 6 6 6 66 6 6 6 7 G7 7 7 7 .8 8 88 88 8 88 09 49;9 B9J9 R9 99 999 9Z9+99 9 99 : :>:>: D: `::: : : : : : : 3; k; ; ;<<)< 0<L< T< [<g<< << << < (=(= /=N=V= X=Vd=2l= }= == = === = =>> W> >>> > > > > > >  ? ?v#? B?B? I? `??? ? ? ? ? ? ? 3@ k@ @@ @@ @A A AA "A@A GA NA A AA AAZB \BsB B B B B B B BB B B B C C %CG8C=?C FCNC \CdC lC CC CCC CCC C CC D DD -D 4DF DFKF ^F jFF F F FsFFF F)G)G /G @GdGkG rG yG G G G HH (HCH HHNH gH lHwH ~H H H H H H H H HH H H H HI $I ,I8I ?I DINIqI tI{IRI5I I I II II I!J!J 'J @JdJkJ rJ yJ JJ J :K:K BK QK [K}K KK K K K KKKK K;L;L AL PLtL{L L L L L M  M 8M8MSM XM^M wM |MM M MM MM MM DN HNQN XN _NgN uN |NN NNN N  X /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/local/include/openssl/usr/include/isopkcs11h-openssl.cpkcs11h-def.hx509.hasn1.hossl_typ.hstack.hbuffer.hevp.hrsa.hbn.hcrypto.hdsa.hdh.hpkcs11h-certificate.hpkcs11h-openssl.hpkcs11.hstdio_iso.hNO;OLO O O OOO  P GP PP `PPP P P P P P #Q [Q QQ Q Q Q Q Q Q Q Q QtQQ Q R  R R 2R2R ]R R RRR R RRR S 0STSeS lS sSS S T NTNT VT ]T dTuT T T T TT T U U#U+U 9U @UvUvU U UUU UU V V !V/V NVNV UV `VVV V V V V V WW W 1W 8W @W ]W dWW W W WW W W W WWW X X XVXVX \X pXXX X XX XX X X YY Y )Y 5Y AY MY YY cY lY vY }YY YYY Y YY+Z 4Z @ZaZZ Z ZZ [ G[ u[u[ [ [ [ [[ [ [ [ [ [\%\%\ 0\Q\X\ _\ f\ m\ \ \ ] >]>]W] v] |]] ] ]] ] ]^ $^ (^;^ M^ Z^ i^ s^ z^^ ^ ^ ^^ ^ ^^ ^ ^^^ _ _1_8_ ?_ w_ ___ _ _` '` ,`3`;` C` Q` X`{`{` `  DD%.?  : ; @ ' ID I: ;  4I : ;  $> I: &II .? < ' D  I .? < ' ID  .? < ' ID  DD%. : ; @ ' ID $> I: . : ; @ ' D I: ;  . : ; @ ' ID  :  I8 I ' ID  I ' D ' ID 4I?  : ;  .?  : ; @ ' ID &I.? < ' ID .? < ' D .? < ' D  DD%. : ; @ ' ID I: ;  $> I&I4I : ;    I:  :  I8 <  : ' ID I' D I !I/ I. : ;@ ' ID I: ; 4I : ;  : 4I?  : ; .?  : ;@ ' ID .? < ' ID  : ( .? < ' D .? < ' D .? < ' ID .? < ' ID  DD%$> I:  :  I8 I !I/  :   :  I   I  4I : ;  .?  : ; @ ' D I: ;  &I.?  : ; @ ' ID  .?  : ;@ ' D 4I : ; .?  : ;@ ' ID I: ; . : ;@ ' ID ' ID I.? < ' ID .? < ' ID  DD%.?  : ; @ ' D I: ;  4I : ;  $> I&II: .?  : ; @ ' ID   D D I  !I/ .? < ' D I.? < ' ID .? < ' ID  DD%.?  : ; @ ' ID I: ;  4I : ;  $> I: I !I/ I  !I/ I  :  I8 ' ID I : &I :  : .?  : ;@ ' ID I: ; 4I : ;  D D .? < ' ID .? < ' D .? < ' ID  DD%.?  : ; @ ' ID I: ;  $> I: I !I/I  !I/  :  I8 I 4I : ;  &I : .?  : ;@ ' ID I: ; 4I : ; ' ID I :  :  .? < ' D .? < ' ID .? < ' ID  DD%.?  : ; @ ' ID I: ;  4I : ;   $> I: &I I I  !I/ I  !I/  :  I8 . : ; @ ' ID 4I : ; D D  : ' ID I :  : . : ;@ ' ID I: ; .?  : ;@ ' ID  ( .?  : ;@ ' D  I .? < ' ID !.? < ' D "#.? < ' ID  DD%. : ; @ ' ID I: ;  4I : ;  $> &III:  D D I  !I/ I !I/  :  I8 ' ID I : . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID .?  : ;@ ' ID .? < ' ID .? < ' D  :  : .? < ' ID  DD%$> I: I !I/I !I/ I  :  I8 ' ID  I  :  :  : &I' D 4I?  : ;  .?  : ; @ ' ID I: ;  .?  : ; @ ' ID 4I : ;  .?  : ;@ ' ID 4I : ;  .?  : ;@ ' D I: ; .?  : ;@ ' ID . : ;@ ' D . : ;@ ' ID  . : ;@ ' D !.? < ' ID ".? < ' ID #.? < ' D $.? < ' D %' D &.? < ' ID  DD%. : ; @ ' ID I: ;  4I : ;  D D $> I: I  !I/ I  !I/ I  :  I8 ' ID I :  :  : &I.?  : ; @ ' ID .?  : ;@ ' ID I: ; 4I : ;  .? < ' ID .? < ' D .? < ' ID  DD%.?  : ; @ ' ID I: ;  4I : ;   $> I: I &I I  !I/ I  !I/  :  I8  .?  : ;@ ' ID I: ; 4I : ; .? < ' ID I.? < ' D .? < ' ID  DD%. : ; @ ' ID I: ;  4I : ;  $> I: I :  I8 &I <  :  ' ID I' D I !I/  . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID I.?  : ;@ ' D .? < ' ID .? < ' D .? < ' ID .? < ' D .? < ' ID o_pkcs11h_mem_mallocN_pkcs11h_mem_free_pkcs11h_mem_strdup_pkcs11h_mem_duplicateE _g_pkcs11h_sys_enginepkcs11h_engine_setSystemH ,&_g_pkcs11h_crypto_engine 'pkcs11h_engine_setCrypto6(_pkcs11h_threading_sleepl_pkcs11h_threading_mutexInit"_pkcs11h_threading_mutexLock_pkcs11h_threading_mutexRelease_pkcs11h_threading_mutexFree|_pkcs1h_threading_mutexLockAll9_pkcs1h_threading_mutexReleaseAll_pkcs11h_threading_condSignal _pkcs11h_threading_condInits _pkcs11h_threading_condWait _pkcs11h_threading_condFreeS _pkcs11h_threading_threadStart _pkcs11h_threading_threadJoin H3_pkcs11h_util_fixupFixedStringZ_pkcs11h_util_hexToBinary_pkcs11h_util_binaryToHex_pkcs11h_util_escapeString_pkcs11h_util_unescapeString>P4_pkcs11h_session_getSlotListZ _pkcs11h_session_getObjectAttributesX'_pkcs11h_session_freeObjectAttributes'_pkcs11h_session_findObjects)_pkcs11h_session_getSessionByTokenId*_pkcs11h_session_release'+_pkcs11h_session_resetB-_pkcs11h_session_getObjectById._pkcs11h_session_validate.__pkcs11h_session_touchpkcs11h_certificate_ensureCertificateAccess*?pkcs11h_certificate_ensureKeyAccess?_pkcs11h_certificate_enumSessionCertificatesDpkcs11h_certificate_freeCertificateIdListLEpkcs11h_certificate_enumTokenCertificateIdsFpkcs11h_certificate_enumCertificateIdsh)"_pkcs11h_slotevent_init"_pkcs11h_slotevent_notify#_pkcs11h_slotevent_terminate_force>#_pkcs11h_slotevent_terminateN0|A)_g_pkcs11h_data *_g_pkcs11h_loglevel.*pkcs11h_getMessage*pkcs11h_getVersion*pkcs11h_getFeatures*pkcs11h_initialize+pkcs11h_terminate,pkcs11h_setLogLevel,pkcs11h_setForkMode-pkcs11h_getLogLevel1-pkcs11h_setLogHook-pkcs11h_setSlotEventHook-pkcs11h_setPINPromptHookZ.pkcs11h_setTokenPromptHook.pkcs11h_setPINCachePeriod/pkcs11h_setMaxLoginRetriesi/pkcs11h_setProtectedAuthentication/pkcs11h_addProvider3pkcs11h_removeProvider4pkcs11h_forkFixup4pkcs11h_plugAndPlayW5pkcs11h_logout5_pkcs11h_loglr3&pkcs11h_data_get(pkcs11h_data_put*pkcs11h_data_del>,pkcs11h_data_freeDataIdListK-pkcs11h_data_enumDataObjects pkcs11h_token_serializeTokenIdTpkcs11h_token_deserializeTokenIdpkcs11h_certificate_serializeCertificateIdpkcs11h_certificate_deserializeCertificateId(epkcs11h_openssl_getX509^ pkcs11h_openssl_createSession!pkcs11h_openssl_getCleanupHook^!pkcs11h_openssl_setCleanupHook!pkcs11h_openssl_freeSession"pkcs11h_openssl_session_getRSA"pkcs11h_openssl_session_getX509#CK_RV<size_tt time_tNsuseconds_t`timeval pkcs11h_sys_engine_sspkcs11h_engine_system_tCK_RV ,size_tasn1_string_st:ASN1_INTEGERdasn1_object_stASN1_OBJECTASN1_BOOLEANASN1_STRING ASN1_ENUMERATED(ASN1_BIT_STRINGCASN1_OCTET_STRING`ASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRING ASN1_UTCTIME$ASN1_GENERALIZEDTIMEDASN1_VISIBLESTRINGbASN1_UTF8STRINGASN1_VALUE2asn1_type_stbASN1_TYPEwX509_algor_stX509_ALGOR stack_stg STACKx buf_mem_st BUF_MEM X509_name_st( X509_NAME= ASN1_TIMER X509_val_st X509_VAL bignum_st4 BIGNUMA bn_mont_ctx_st6bn_gencb_strsa_meth_stRSA_METHODENGINEcrypto_ex_data_stCRYPTO_EX_DATA$BN_MONT_CTXLBN_BLINDING rsa_st|DSA_SIG_st"dsa_method DSA_METHOD(dsa_st/dh_methodDH_METHODpdh_stJevp_pkey_stEVP_PKEYX509_pubkey_st!X509_PUBKEY8ASN1_ENCODING_stzASN1_ENCODINGx509_cinf_stZX509_CINFX509_POLICY_CACHEx509_cert_aux_st.X509_CERT_AUXGx509_stX509__pkcs11_openssl_d2i_ttmPKCS11H_BOOL pkcs11h_crypto_engine_s!pkcs11h_engine_crypto_t#gnutls_x509_crt_t# $gnutls_datum_t5$time_t|'CK_RV(6uint16_tuint8_tuint32_t<upad64_tK_pthread_mutex _pkcs11h_mutex_tHPKCS11H_BOOL[__pkcs11h_threading_mutex_entry_s__pkcs11h_threading_mutex_entry_tCK_RV o _pthread_cond pthread_cond_t pthread_mutex_t 2 time_t? suseconds_tQ timeval timespec _pkcs11h_thread_start_t ___pkcs11h_thread_data_t* D sigset_t_pthread_condattr_pthread_mutexattr_pthread_attr# H3Hsize_tCK_RV >P4CK_RVPKCS11H_BOOL_CK_VERSION]CK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOiCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotList_CK_SLOT_INFOCK_C_GetSlotInfo$_CK_TOKEN_INFOCK_C_GetTokenInfo-CK_C_GetMechanismListI_CK_MECHANISM_INFOCK_C_GetMechanismInfo CK_C_InitToken< CK_C_InitPINy CK_C_SetPIN CK_C_OpenSession CK_C_CloseSession0 CK_C_CloseAllSessionsL CK_SLOT_ID] CK_STATEl _CK_SESSION_INFO CK_C_GetSessionInfo CK_C_GetOperationStateg CK_C_SetOperationState CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTEi CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSizeS CK_C_GetAttributeValue CK_C_SetAttributeValue CK_C_FindObjectsInitCK_C_FindObjects?CK_C_FindObjectsFinal[CK_MECHANISM_TYPEs_CK_MECHANISMCK_C_EncryptInit+CK_C_EncrypthCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitCK_C_DecryptWCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitCK_C_Digest5CK_C_DigestUpdatehCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitCK_C_SignBCK_C_SignUpdatexCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecover)CK_C_VerifyInitiCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinal CK_C_VerifyRecoverInitQCK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdate&CK_C_SignEncryptUpdatemCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPairPCK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandomKCK_C_GenerateRandom{CK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTfCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_t CK_BBOOL# CK_ULONG_PTR6 CK_SLOT_ID_PTRK CK_ULONGo!pkcs11h_token_id_s!pkcs11h_token_id_t"CK_SESSION_HANDLE"time_ta"CK_BYTE_PTRs"size_t"pkcs11h_certificate_id_s2#pkcs11h_certificate_id_tQ#pkcs11h_certificate_id_list_s*"pkcs11h_certificate_id_list_t#uint16_t#uint8_t#$$uint32_t$%upad64_t%{%_pthread_mutex%_pkcs11h_mutex_t&_pkcs11h_session_s _pkcs11h_session_t'CK_OBJECT_HANDLE7'CK_ATTRIBUTE_PTR.-CK_TOKEN_INFOC.CK_OBJECT_CLASSm.CK_ATTRIBUTE0CK_UTF8CHAR_PTRX 1CK_RVppkcs11h_token_id_spkcs11h_token_id_tPKCS11H_BOOLCK_FLAGS_CK_VERSION_CK_TOKEN_INFOCK_TOKEN_INFO_PTRnCK_C_InitializeCK_C_Finalize_CK_INFOk CK_C_GetInfo CK_C_GetFunctionList CK_C_GetSlotList _CK_SLOT_INFO CK_C_GetSlotInfo CK_C_GetTokenInfo$ CK_C_GetMechanismList@ _CK_MECHANISM_INFO CK_C_GetMechanismInfo CK_C_InitToken3 CK_C_InitPINp CK_C_SetPIN CK_C_OpenSession CK_C_CloseSession' CK_C_CloseAllSessionsC CK_SLOT_IDT CK_STATEc _CK_SESSION_INFO CK_C_GetSessionInfoCK_C_GetOperationState^CK_C_SetOperationStateCK_C_LoginCK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE`CK_C_CreateObjectCK_C_CopyObjectCK_C_DestroyObject CK_C_GetObjectSizeJCK_C_GetAttributeValueCK_C_SetAttributeValueCK_C_FindObjectsInit CK_C_FindObjects6CK_C_FindObjectsFinalRCK_MECHANISM_TYPEj_CK_MECHANISMCK_C_EncryptInit"CK_C_Encrypt_CK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitCK_C_DecryptNCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitCK_C_Digest,CK_C_DigestUpdate_CK_C_DigestKeyCK_C_DigestFinalCK_C_SignInit CK_C_Sign9CK_C_SignUpdateoCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecover CK_C_VerifyInit`CK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInitHCK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdatedCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPairGCK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKey CK_C_SeedRandomBCK_C_GenerateRandomrCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LIST]!CK_FUNCTION_LIST_PTR!_pkcs11h_thread_t!_pkcs11h_provider_s _pkcs11h_provider_t"CK_SESSION_HANDLE#time_tS#CK_BYTE_PTRe#size_tr#pkcs11h_certificate_id_s$$pkcs11h_certificate_id_tC$pkcs11h_certificate_id_list_s#pkcs11h_certificate_id_list_t$uint16_t$uint8_t$q%%uint32_t%%upad64_t&m&_pthread_mutex&_pkcs11h_mutex_t&_pkcs11h_session_s_pkcs11h_session_t(CK_ULONG*pkcs11h_token_id_list_s*pkcs11h_token_id_list_t,CK_SLOT_ID_PTR-CK_TOKEN_INFO lQPKCS11H_BOOLsize_t/time_tCK_RV%pkcs11h_token_id_spkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_spkcs11h_certificate_id_to_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS&_CK_INFOCK_C_GetInfoCK_C_GetFunctionList4 CK_C_GetSlotListm _CK_SLOT_INFO CK_C_GetSlotInfo| _CK_TOKEN_INFOM CK_C_GetTokenInfo CK_C_GetMechanismList _CK_MECHANISM_INFO CK_C_GetMechanismInfoZ CK_C_InitToken CK_C_InitPIN CK_C_SetPIN(CK_C_OpenSessionUCK_C_CloseSessionCK_C_CloseAllSessionsCK_SLOT_IDCK_STATE_CK_SESSION_INFO9CK_C_GetSessionInfosCK_C_GetOperationStateCK_C_SetOperationStateCK_C_Login#CK_C_Logout5CK_ATTRIBUTE_TYPEM_CK_ATTRIBUTECK_C_CreateObjectCK_C_CopyObject/CK_C_DestroyObjecthCK_C_GetObjectSizeCK_C_GetAttributeValueCK_C_SetAttributeValue%CK_C_FindObjectsIniteCK_C_FindObjectsCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM=CK_C_EncryptInit~CK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinal,CK_C_DecryptInitmCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitVCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinal'CK_C_SignIniteCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitECK_C_SignRecover|CK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdate&CK_C_VerifyFinal]CK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate0CK_C_DecryptDigestUpdateyCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate CK_C_GenerateKeyYCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey3CK_C_DeriveKeyhCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction;CK_C_WaitForSlotEventW_CK_FUNCTION_LIST"CK_FUNCTION_LIST_PTR"_pkcs11h_thread_t"_pkcs11h_provider_s$_pkcs11h_provider_tG$CK_SESSION_HANDLE$pkcs11h_certificate_id_list_s_$pkcs11h_certificate_id_list_t$uint16_t$uint8_t%%%uint32_t%8&upad64_tG&&_pthread_mutex'_pkcs11h_mutex_t3'_pkcs11h_session_s _pkcs11h_session_tH(CK_OBJECT_HANDLE_(pkcs11h_certificate_s0)pkcs11h_certificate_tQ)CK_OBJECT_CLASSg)CK_ATTRIBUTE)CK_ULONG,CK_BBOOL/__pkcs11h_private_op_e0CK_MECHANISM0CK_KEY_TYPENICK_SLOT_ID_PTRcICK_TOKEN_INFOROtm-h)^size_t_PKCS11H_BOOL_CK_VERSIONCK_C_InitializeCK_C_Finalize=CK_FLAGS]_CK_INFOCK_C_GetInfo+CK_C_GetFunctionListkCK_C_GetSlotList_CK_SLOT_INFOGCK_C_GetSlotInfo_CK_TOKEN_INFO CK_C_GetTokenInfo CK_C_GetMechanismList _CK_MECHANISM_INFOP CK_C_GetMechanismInfo CK_C_InitToken CK_C_InitPIN CK_C_SetPINd CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions CK_SLOT_ID CK_STATE _CK_SESSION_INFOu CK_C_GetSessionInfo CK_C_GetOperationState CK_C_SetOperationState8 CK_C_Login_ CK_C_Logoutq CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObject:CK_C_CopyObjectkCK_C_DestroyObjectCK_C_GetObjectSizeCK_C_GetAttributeValue$CK_C_SetAttributeValueaCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISMyCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdate0CK_C_EncryptFinalhCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalRCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKey,CK_C_DigestFinalcCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinal<CK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitCK_C_Verify*CK_C_VerifyUpdatebCK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover#CK_C_DigestEncryptUpdatelCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateECK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKey+CK_C_UnwrapKeyoCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandom CK_C_GetFunctionStatus=CK_C_CancelFunctionwCK_C_WaitForSlotEvent_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR _pkcs11h_thread_t( _pkcs11h_provider_s>_pkcs11h_provider_t!CK_RV!CK_ULONG!CK_SLOT_ID_PTR!CK_TOKEN_INFO$uint8_t$uint16_t$N%upad64_t]%_pthread_cond%pthread_cond_t%q&&uint32_t&&H'_pthread_mutex'pthread_mutex_t' 0|APKCS11H_BOOL(_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotList7_CK_SLOT_INFOCK_C_GetSlotInfoF_CK_TOKEN_INFOCK_C_GetTokenInfoOCK_C_GetMechanismListk_CK_MECHANISM_INFOCK_C_GetMechanismInfo)CK_C_InitToken^CK_C_InitPINCK_C_SetPINCK_C_OpenSession$ CK_C_CloseSessionR CK_C_CloseAllSessionsn CK_SLOT_ID CK_STATE _CK_SESSION_INFO CK_C_GetSessionInfoB CK_C_GetOperationState CK_C_SetOperationState CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObject7 CK_C_GetObjectSizeu CK_C_GetAttributeValue CK_C_SetAttributeValue CK_C_FindObjectsInit4 CK_C_FindObjectsa CK_C_FindObjectsFinal} CK_MECHANISM_TYPE _CK_MECHANISM CK_C_EncryptInitMCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInit<CK_C_DecryptyCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInit%CK_C_DigestWCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInit4CK_C_SigndCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecoverKCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinal,CK_C_VerifyRecoverInitsCK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateHCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKey(CK_C_GenerateKeyPairrCK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKey7CK_C_SeedRandommCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction CK_C_WaitForSlotEvent&_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_tpkcs11h_token_id_s pkcs11h_token_id_t( CK_SESSION_HANDLE@ time_t CK_BYTE_PTR size_t pkcs11h_certificate_id_sU!pkcs11h_certificate_id_tt!pkcs11h_certificate_id_list_sM pkcs11h_certificate_id_list_t!uint16_t!uint8_t!""uint32_t")#upad64_t8##_pthread_mutex $_pkcs11h_mutex_t$$_pkcs11h_session_s"_pkcs11h_session_ts%pkcs11h_hook_log_t%pkcs11h_hook_slotevent_t%pkcs11h_hook_token_prompt_to&pkcs11h_hook_pin_prompt_t&7'}''_pthread_cond)(pthread_cond_t>(pthread_mutex_tT(u(_pkcs11h_cond_t((_pkcs11h_data_s)_pkcs11h_data_tr*CK_RV1pid_t2CK_CREATEMUTEXI2CK_DESTROYMUTEXu2CK_LOCKMUTEX2CK_UNLOCKMUTEX2_CK_C_INITIALIZE_ARGS@3CK_C_INITIALIZE_ARGS`3CK_C_INITIALIZE_ARGS_PTR3CK_INFOf6va_list>pkcs11h_crypto_engine_sb lr3CK_RVPKCS11H_BOOLW_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_C_GetSlotListU_CK_SLOT_INFOCK_C_GetSlotInfod_CK_TOKEN_INFO5CK_C_GetTokenInfomCK_C_GetMechanismList_CK_MECHANISM_INFO CK_C_GetMechanismInfoG CK_C_InitToken| CK_C_InitPIN CK_C_SetPIN CK_C_OpenSessionB CK_C_CloseSessionp CK_C_CloseAllSessions CK_SLOT_ID CK_STATE _CK_SESSION_INFO& CK_C_GetSessionInfo` CK_C_GetOperationState CK_C_SetOperationState CK_C_Login CK_C_Logout" CK_ATTRIBUTE_TYPE: _CK_ATTRIBUTE CK_C_CreateObject CK_C_CopyObject CK_C_DestroyObjectU CK_C_GetObjectSize CK_C_GetAttributeValue CK_C_SetAttributeValueCK_C_FindObjectsInitRCK_C_FindObjectsCK_C_FindObjectsFinalCK_MECHANISM_TYPE_CK_MECHANISM*CK_C_EncryptInitkCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitZCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitCCK_C_DigestuCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitRCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInit2CK_C_SignRecoveriCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalJCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdatefCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKeyFCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey CK_C_DeriveKeyUCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction(CK_C_WaitForSlotEventD_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_t pkcs11h_token_id_s!pkcs11h_token_id_t-!CK_SESSION_HANDLEE!time_t!CK_BYTE_PTR!size_t!pkcs11h_certificate_id_sZ"pkcs11h_certificate_id_ty"pkcs11h_certificate_id_list_sR!pkcs11h_certificate_id_list_t"uint16_t"uint8_t"##uint32_t#.$upad64_t=$$_pthread_mutex%_pkcs11h_mutex_t)%_pkcs11h_session_s_pkcs11h_session_tf&CK_OBJECT_CLASS|&CK_ATTRIBUTE&CK_OBJECT_HANDLE&CK_ULONG*CK_BBOOL,pkcs11h_data_id_list_s,pkcs11h_data_id_list_t CK_RV&size_tpkcs11h_token_id_spkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_shpkcs11h_certificate_id_t-(PKCS11H_BOOLGasn1_string_stASN1_INTEGERasn1_object_st"ASN1_OBJECT>ASN1_BOOLEANQASN1_STRINGhASN1_ENUMERATEDASN1_BIT_STRINGASN1_OCTET_STRINGASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRING-ASN1_BMPSTRINGGASN1_UNIVERSALSTRINGgASN1_UTCTIMEASN1_GENERALIZEDTIMEASN1_VISIBLESTRINGASN1_UTF8STRINGASN1_VALUEasn1_type_stASN1_TYPEX509_algor_st X509_ALGORjstack_stSTACKbuf_mem_stBUF_MEM2X509_name_stX509_NAMEASN1_TIMEX509_val_stX509_VAL bignum_st BIGNUM bn_mont_ctx_st bn_gencb_strsa_meth_stRSA_METHOD9ENGINEPcrypto_ex_data_stCRYPTO_EX_DATABN_MONT_CTXBN_BLINDINGr rsa_stDSA_SIG_stdsa_methodDSA_METHODdsa_stdh_methodQDH_METHODdh_st|evp_pkey_st<EVP_PKEYPX509_pubkey_stX509_PUBKEYASN1_ENCODING_stASN1_ENCODINGx509_cinf_stX509_CINFX509_POLICY_CACHEBx509_cert_aux_stX509_CERT_AUXx509_stX509=pkcs11h_certificate_tppkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_sCpkcs11h_openssl_session_tcRSACK_MECHANISM_TYPECK_RV size_tB __pkcs11_openssl_d2i_t> __mytime__mysleep__mygettimeofday ,__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitializen__pkcs11h_crypto_openssl_certificate_get_expirationU__pkcs11h_crypto_openssl_certificate_get_dn?__pkcs11h_crypto_openssl_certificate_is_issuer!__pkcs11h_crypto_gnutls_initializeA"__pkcs11h_crypto_gnutls_uninitialize"__pkcs11h_crypto_gnutls_certificate_get_expirationB$__pkcs11h_crypto_gnutls_certificate_get_dnC%__pkcs11h_crypto_gnutls_certificate_is_issuer*6 ___pkcs11h_thread_startlQ__pkcs11h_certificate_loadCertificate)__pkcs11h_certificate_updateCertificateIdDescription]*__pkcs11h_certificate_getKeyAttributes-__pkcs11h_certificate_doPrivateOperation;B__pkcs11h_certificate_splitCertificateIdListph)__pkcs11h_slotevent_checksump__pkcs11h_slotevent_provider!__pkcs11h_slotevent_manager0|At6__pkcs11h_hooks_default_log 7__pkcs11h_hooks_default_token_prompt7__pkcs11h_hooks_default_pin_promptu8__pkcs11h_threading_atfork_prepare8__pkcs11h_threading_atfork_parent8__pkcs11h_threading_atfork_child9__pkcs11h_forkFixup*lr3_pkcs11h_data_getObject(__pkcs11h_openssl_get_openssl_sessionw__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_dec__pkcs11h_openssl_enc__pkcs11h_openssl_finishW ,!_g_pkcs11h_crypto_engine_openssl&_g_pkcs11h_crypto_engine_gnutls36__s_pkcs11h_threading_mutex_list H3xZx(lQ*separator1*unknown.hash.SUNW_ldynsym.dynsym.dynstr.SUNW_version.SUNW_versym.SUNW_dynsymsort.SUNW_reloc.rel.plt.text.init.fini.rodata.rodata1.got.dynamic.data.bssf.picdata.bss.symtab.strtab.comment.debug_loc.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.debug_funcnames.debug_varnames.shstrtabo44`f   "%ol.l.%o..3o//"@o<0<0tQ 22] BAA aDDfJJl``r``x````K\\$$`0~ ! !--y" )  F-c= ?G07070100193ee6000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000001d00000000root/usr/local/lib/pkgconfig07070100193ee7000081a40000000000000000000000014e697e210000018d000000b600010002ffffffffffffffff0000003300000000root/usr/local/lib/pkgconfig/libpkcs11-helper-1.pcprefix=/usr/local exec_prefix=${prefix} libdir=${exec_prefix}/lib includedir=${prefix}/include features= debug threading token data certificate slotevent openssl engine_crypto Name: pkcs11-helper Description: PKCS#11 helper library Version: 1.09 Cflags: -I${includedir} Libs: -lpthread -ldl -L/usr/local/lib -lcrypto -lsocket -lnsl -ldl -L/usr/local/lib -lgnutls -L${libdir} -lpkcs11-helper 07070100193ee8000041ed0000000000000000000000054e69931b00000000000000b600010002ffffffffffffffff0000001500000000root/usr/local/share07070100193eeb000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000001900000000root/usr/local/share/doc07070100193eec000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000002700000000root/usr/local/share/doc/pkcs11-helper07070100193ef0000081a40000000000000000000000014e697e22000004b6000000b600010002ffffffffffffffff0000002e00000000root/usr/local/share/doc/pkcs11-helper/READMEpkcs11-helper -- PKCS#11 simplification. Copyright (c) 2005-2011 Alon Bar-Lev ABOUT PKCS#11 is published standard. PKCS#11 is the de-facto standard to access cryptographic devices. pkcs11-helper is a library that simplifies the interaction with PKCS#11 providers for end-user applications. FEATURES pkcs11-helper allows using multiple PKCS#11 providers at the same time, enumerating available token certificates, or selecting a certificate directly by serialized id, handling card removal and card insert events, handling card re-insert to a different slot, supporting session expiration and much more all using a simple API. pkcs11-helper is not designed to manage card content, since object attributes are usually vendor specific, and 99% of application need to access existing objects in order to perform signature and decryption. COMPATIBILITY - The pkcs11-helper library is available in POSIX and WIN32 compliant systems. - The pkcs11-helper library should work with almost any PKCS#11 provider, since it uses the minimum required features of the PKCS#11 standard. SUPPORT http://www.opensc-project.org AUTHORS Alon Bar-Lev 07070100193eee000081a40000000000000000000000014e697e2200000608000000b600010002ffffffffffffffff0000003300000000root/usr/local/share/doc/pkcs11-helper/COPYING.BSDCopyright (c) 2005-2006, Alon Bar-Lev All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: o Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. o Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. o Neither the name of the Alon Bar-Lev nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 07070100193eef000081a40000000000000000000000014e697e2200004645000000b600010002ffffffffffffffff0000003300000000root/usr/local/share/doc/pkcs11-helper/COPYING.GPL GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. 07070100193eed000081a40000000000000000000000014e697e2200001264000000b600010002ffffffffffffffff0000002f00000000root/usr/local/share/doc/pkcs11-helper/COPYING pkcs11-helper License Copyright (c) 2005-2011 Alon Bar-Lev All rights reserved. This software is available to you under a choice of one of two licenses. You may choose to be licensed under the terms of the GNU General Public License (GPL) Version 2, or the BSD license. GNU General Public License (GPL) Version 2 =========================================== This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program (see the file COPYING.GPL included with this distribution); if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. BSD License ============ Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: o Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. o Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. o Neither the name of the Alon Bar-Lev nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Packeging License RPM Copyright (c) 2006-2007 Eddy Nigg Debian Copyright (c) 2007 Sandro Wefel m4 Macros License autoconf/automake Copyright (C) 2002, 2003 Free Software Foundation, Inc. pkg.m4 Copyright © 2004 Scott James Remnant . AX_CPP_VARARG* Copyright (c) James Yonan Copyright (c) Matthias Andree pkcs11.h License Copyright 2006, 2007 g10 Code GmbH Copyright 2006 Andreas Jellinghaus OpenSSL License (Optional component, parsing certificates, engine) This product includes software developed by the OpenSSL Project for use in the OpenSSL Toolkit (http://www.OpenSSL.org/) This product includes cryptographic software written by Eric Young (eay@cryptsoft.com). This product includes software written by Tim Hudson (tjh@cryptsoft.com). GnuTLS License (Optional component, for a complete GPLed license, replaces OpenSSL) Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Nikos Mavroyanopoulos See the end for copying conditions. The copyright holder for Gnutls is Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. NSS License (Optional component, parsing certificates, engine) The Original Code is Mozilla Communicator client code, released March 31, 1998. The Initial Developer of the Original Code is Netscape Communications Corporation. Portions created by Netscape are Copyright (C) 1998-1999 Netscape Communications Corporation. All Rights Reserved. Doxygen License (Optional component, documentation) Copyright © 1997-2006 by Dimitri van Heesch. Permission to use, copy, modify, and distribute this software and its documentation under the terms of the GNU General Public License is hereby granted. No representations are made about the suitability of this software for any purpose. It is provided "as is" without express or implied warranty. See the GNU General Public License for more details. Documents produced by doxygen are derivative works derived from the input used in their production; they are not affected by this license. 07070100193ee9000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000001d00000000root/usr/local/share/aclocal07070100193eea000081a40000000000000000000000014e697e2100000d61000000b600010002ffffffffffffffff0000003000000000root/usr/local/share/aclocal/pkcs11-helper-1.m4# pkcs11-helper-1.m4 - Macros to locate and utilise pkcs11-helper. -*- Autoconf -*- # # Copyright (c) 2005-2011 Alon Bar-Lev # All rights reserved. # # This software is available to you under a choice of one of two # licenses. You may choose to be licensed under the terms of the GNU # General Public License (GPL) Version 2, or the BSD license. # # GNU General Public License (GPL) Version 2 # =========================================== # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License version 2 # as published by the Free Software Foundation. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program (see the file COPYING.GPL included with this # distribution); if not, write to the Free Software Foundation, Inc., # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. # # BSD License # ============ # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # o Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # o Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # o Neither the name of the Alon Bar-Lev nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # # PKCS11_HELPER_CHECK_FEATURES([features]) # # Check whether features exists in pkcs11-helper. # # debug threading token data certificate locate slotevent openssl standalone engine_crypto # AC_DEFUN([PKCS11_HELPER_1_CHECK_FEATURES], [ AC_REQUIRE([PKG_PROG_PKG_CONFIG]) AC_ARG_VAR([PKCS11_HELPER_FEATURES], [pkcs11-helperer feartures overriding pkg-config]) AC_MSG_CHECKING([pkcs11-helper features]) _PKG_CONFIG([PKCS11_HELPER_FEATURES], [variable features], [libpkcs11-helper-1]) for pkcs11h_feature in $1; do echo " ${pkg_cv_PKCS11_HELPER_FEATURES} " | grep " ${pkcs11h_feature} " > /dev/null 2>&1 || \ AC_MSG_ERROR([pkcs11-helper ${pkcs11h_feature} feature must be enabled.]) done AC_MSG_RESULT([ok]) ]) 07070100193ef1000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000001900000000root/usr/local/share/man07070100193ef2000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000001e00000000root/usr/local/share/man/man807070100193ef3000081a40000000000000000000000014e697e2100000e22000000b600010002ffffffffffffffff0000003000000000root/usr/local/share/man/man8/pkcs11-helper-1.8.\" .\" Copyright (c) 2005-2007 Alon Bar-Lev .\" All rights reserved. .\" .\" This software is available to you under a choice of one of two .\" licenses. You may choose to be licensed under the terms of the GNU .\" General Public License (GPL) Version 2, or the BSD license. .\" .\" GNU General Public License (GPL) Version 2 .\" =========================================== .\" This program is free software; you can redistribute it and/or modify .\" it under the terms of the GNU General Public License version 2 .\" as published by the Free Software Foundation. .\" .\" This program is distributed in the hope that it will be useful, .\" but WITHOUT ANY WARRANTY; without even the implied warranty of .\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the .\" GNU General Public License for more details. .\" .\" You should have received a copy of the GNU General Public License .\" along with this program (see the file COPYING.GPL included with this .\" distribution); if not, write to the Free Software Foundation, Inc., .\" 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. .\" .\" BSD License .\" ============ .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions are met: .\" .\" o Redistributions of source code must retain the above copyright notice, .\" this list of conditions and the following disclaimer. .\" o Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" o Neither the name of the Alon Bar-Lev nor the names of its .\" contributors may be used to endorse or promote products derived from .\" this software without specific prior written permission. .\" .\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" .\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE .\" LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR .\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF .\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS .\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN .\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" .Dd November 18, 2006 .Os POSIX-compatible .Dt pkcs11-helper 1 .Sh NAME .Nm pkcs11-helper .Nd Simplified PKCS#11 library. .Sh DESCRIPTION .Nm pkcs11-helper is a simplified API for accessing PKCS#11 tokens for user applications. .Sh SEE ALSO .Rs .%T "pkcs11-helper Home Page" .%O http://www.opensc-project.org/pkcs11-helper .Re .Sh AUTHORS AND COPYRIGHT Copyright (c) 2006 Alon Bar-Lev .Pp All rights reserved. .Pp THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 07070100193ed7000041ed0000000000000000000000034e69931b00000000000000b600010002ffffffffffffffff0000001700000000root/usr/local/include07070100193ed8000041ed0000000000000000000000024e69931b00000000000000b600010002ffffffffffffffff0000002900000000root/usr/local/include/pkcs11-helper-1.007070100193edd000081a40000000000000000000000014e697e2100000c98000000b600010002ffffffffffffffff0000003700000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-def.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @file pkcs11h-def.h * @brief pkcs11-helper core definitions. * @author Alon Bar-Lev */ #ifndef __PKCS11H_DEF_H #define __PKCS11H_DEF_H #include #if !defined(_WIN32) #include #endif #if defined(__cplusplus) extern "C" { #endif #if !defined(IN) #define IN #endif #if !defined(OUT) #define OUT #endif #if defined(PKCS11H_USE_CYGWIN) #define CRYPTOKI_FORCE_WIN32 #endif #include typedef int PKCS11H_BOOL; #ifdef __cplusplus } #endif #endif /* __PKCS11H_DEF_H */ 07070100193ee1000081a40000000000000000000000014e697e2100000c27000000b600010002ffffffffffffffff0000003b00000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-version.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ #ifndef __PKCS11H_VERSION_H #define __PKCS11H_VERSION_H /** * @file pkcs11h-version.h * @brief pkcs11-helper core. * @author Alon Bar-Lev * @see pkcs11h_core. */ /** * @addtogroup pkcs11h_core pkcs11-helper core interface * * Core functionality. * * @{ */ /** * @brief Library version. */ #define PKCS11H_VERSION ( \ (1<<16) | \ (9<<8) | \ (0<<0) \ ) /** @} */ #endif /* __PKCS11H_VERSION_H */ 07070100193edc000081a40000000000000000000000014e697e21000018a3000000b600010002ffffffffffffffff0000003800000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-data.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_data Data object interface * * Data object manipulation. * * @{ */ /** * @file pkcs11h-data.h * @brief pkcs11-helper data object support. * @author Alon Bar-Lev * @see pkcs11h_data. */ #ifndef __PKCS11H_DATA_H #define __PKCS11H_DATA_H #include #if defined(__cplusplus) extern "C" { #endif struct pkcs11h_data_id_list_s; /** * @brief Data identifier list. */ typedef struct pkcs11h_data_id_list_s *pkcs11h_data_id_list_t; /** * @brief Data identifier list. */ struct pkcs11h_data_id_list_s { /** Next element */ pkcs11h_data_id_list_t next; /** Application string */ char *application; /** Label string */ char *label; }; /** * @brief Get data object. * @param token_id Token id object. * @param is_public Object is public. * @param application Object application attribute. * @param label Object label attribute. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param blob Blob, set to NULL to get size. * @param p_blob_size Blob size. * @return CK_RV. * @note blob may be NULL to get size. */ CK_RV pkcs11h_data_get ( IN const pkcs11h_token_id_t token_id, IN const PKCS11H_BOOL is_public, IN const char * const application, IN const char * const label, IN void * const user_data, IN const unsigned mask_prompt, OUT unsigned char * const blob, IN OUT size_t * const p_blob_size ); /** * @brief Put data object. * @param token_id Token id object. * @param is_public Object is public. * @param application Object application attribute. * @param label Object label attribute. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param blob Blob, set to NULL to get size. * @param blob_size Blob size. * @return CK_RV. */ CK_RV pkcs11h_data_put ( IN const pkcs11h_token_id_t token_id, IN const PKCS11H_BOOL is_public, IN const char * const application, IN const char * const label, IN void * const user_data, IN const unsigned mask_prompt, OUT unsigned char * const blob, IN const size_t blob_size ); /** * @brief Delete data object. * @param token_id Token id object. * @param is_public Object is public. * @param application Object application attribute. * @param label Object label attribute. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @return CK_RV. */ CK_RV pkcs11h_data_del ( IN const pkcs11h_token_id_t token_id, IN const PKCS11H_BOOL is_public, IN const char * const application, IN const char * const label, IN void * const user_data, IN const unsigned mask_prompt ); /** * @brief Free data object list. * @param data_id_list List to free. * @return CK_RV. */ CK_RV pkcs11h_data_freeDataIdList ( IN const pkcs11h_data_id_list_t data_id_list ); /** * @brief Get list of data objects. * @param token_id Token id object. * @param is_public Get a list of public objects. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param p_data_id_list List location. * @see pkcs11h_data_freeDataIdList(). * @return CK_RV. */ CK_RV pkcs11h_data_enumDataObjects ( IN const pkcs11h_token_id_t token_id, IN const PKCS11H_BOOL is_public, IN void * const user_data, IN const unsigned mask_prompt, OUT pkcs11h_data_id_list_t * const p_data_id_list ); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_DATA_H */ 07070100193edb000081a40000000000000000000000014e697e2100003874000000b600010002ffffffffffffffff0000003800000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-core.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_core pkcs11-helper core interface * * Core functionality. * * @{ */ /** * @file pkcs11h-core.h * @brief pkcs11-helper core. * @author Alon Bar-Lev * @see pkcs11h_core. */ #ifndef __PKCS11H_BASE_H #define __PKCS11H_BASE_H #include #include #include #include #include #if defined(__cplusplus) extern "C" { #endif /** * @brief pkcs11-helper features mask. * @addtogroup PKCS11H_FEATURE_MASK * @see pkcs11h_getFeatures(). * @{ */ /** Engine OpenSSL is enabled. */ #define PKCS11H_FEATURE_MASK_ENGINE_CRYPTO_OPENSSL (1<< 0) /** Engine GNUTLS is enabled. */ #define PKCS11H_FEATURE_MASK_ENGINE_CRYPTO_GNUTLS (1<< 1) /** Engine GNUTLS is enabled. */ #define PKCS11H_FEATURE_MASK_ENGINE_CRYPTO_WIN32 (1<< 2) /** Debugging (logging) is enabled. */ #define PKCS11H_FEATURE_MASK_DEBUG (1<< 3) /** Threading support is enabled. */ #define PKCS11H_FEATURE_MASK_THREADING (1<< 4) /** Token interface is enabled. */ #define PKCS11H_FEATURE_MASK_TOKEN (1<< 5) /** Data interface is enabled. */ #define PKCS11H_FEATURE_MASK_DATA (1<< 6) /** Certificate interface is enabled, */ #define PKCS11H_FEATURE_MASK_CERTIFICATE (1<< 7) /** Slotevent interface is enabled. */ #define PKCS11H_FEATURE_MASK_SLOTEVENT (1<< 8) /** OpenSSL interface is enabled. */ #define PKCS11H_FEATURE_MASK_OPENSSL (1<< 9) /** @} */ /** * @brief pkcs11-helper log level. * @addtogroup PKCS11H_LOG * @see pkcs11h_getLogLevel(). * @see pkcs11h_setLogLevel(). * @{ */ /** Most verbose log (entry/return). */ #define PKCS11H_LOG_DEBUG2 5 /** Important logic log. */ #define PKCS11H_LOG_DEBUG1 4 /** Information messages. */ #define PKCS11H_LOG_INFO 3 /** Warning messages, */ #define PKCS11H_LOG_WARN 2 /** Error messages. */ #define PKCS11H_LOG_ERROR 1 /** Used in order to turn off logging. */ #define PKCS11H_LOG_QUIET 0 /** @} */ /** Inifite session limit */ #define PKCS11H_PIN_CACHE_INFINITE -1 /** * @brief Signature mask selection. * @addtogroup PKCS11H_PRIVATEMODE_MASK * @{ */ /** Auto select by private key attributes. */ #define PKCS11H_PRIVATEMODE_MASK_AUTO (0) /** Force signature. */ #define PKCS11H_PRIVATEMODE_MASK_SIGN (1<<0) /** Force recover. */ #define PKCS11H_PRIVATEMODE_MASK_RECOVER (1<<1) /** Force decrypt. */ #define PKCS11H_PRIVATEMODE_MASK_DECRYPT (1<<2) /** Force unwrap. */ #define PKCS11H_PRIVATEMODE_MASK_UNWRAP (1<<3) /** @} */ /** * @brief Slotevent mode selection. * @addtogroup PKCS11H_SLOTEVENT_METHOD * @{ */ /* Auto select by provider information. */ #define PKCS11H_SLOTEVENT_METHOD_AUTO 0 /** Force trigger. */ #define PKCS11H_SLOTEVENT_METHOD_TRIGGER 1 /** Force poll. */ #define PKCS11H_SLOTEVENT_METHOD_POLL 2 /** Force fetch. */ #define PKCS11H_SLOTEVENT_METHOD_FETCH 3 /** @} */ /** * @brief Prompt mask selection. * @addtogroup PKCS11H_PROMPT_MASK * @{ */ /** Allow PIN prompt. */ #define PKCS11H_PROMPT_MASK_ALLOW_PIN_PROMPT (1<<0) /** Allow token prompt. */ #define PKCS11H_PROMPT_MASK_ALLOW_TOKEN_PROMPT (1<<1) /** Allow all prompt. */ #define PKCS11H_PROMPT_MASK_ALLOW_ALL ( \ PKCS11H_PROMPT_MASK_ALLOW_PIN_PROMPT | \ PKCS11H_PROMPT_MASK_ALLOW_TOKEN_PROMPT \ ) /** @} */ /** * @brief Enumeration mode selection. * @addtogroup PKCS11H_ENUM_METHOD * @{ */ /** Get from cache, if available. */ #define PKCS11H_ENUM_METHOD_CACHE 0 /** Get from cache, but only available objects. */ #define PKCS11H_ENUM_METHOD_CACHE_EXIST 1 /** Reload objects. */ #define PKCS11H_ENUM_METHOD_RELOAD 2 /** @} */ struct pkcs11h_token_id_s; /** * @brief Token identifier. */ typedef struct pkcs11h_token_id_s *pkcs11h_token_id_t; /** * @brief Log hook. * @param global_data Hook data. * @param flags Log flags. * @param format printf style format. * @param args stdargs */ typedef void (*pkcs11h_hook_log_t)( IN void * const global_data, IN const unsigned flags, IN const char * const format, IN va_list args ); /** * @brief Slotevent hook. * @param global_data Hook data. */ typedef void (*pkcs11h_hook_slotevent_t)( IN void * const global_data ); /** * @brief Token prompt hook. * @param global_data Hook data. * @param user_data Local data. * @param token Token. * @param retry Retry counter. * @return TRUE success. */ typedef PKCS11H_BOOL (*pkcs11h_hook_token_prompt_t)( IN void * const global_data, IN void * const user_data, IN const pkcs11h_token_id_t token, IN const unsigned retry ); /** * @brief PIN prompt hook. * @param global_data Hook data. * @param user_data Local data. * @param token Token. * @param retry Retry counter. * @param pin PIN buffer. * @param pin_max PIN buffer size. * @return TRUE success. */ typedef PKCS11H_BOOL (*pkcs11h_hook_pin_prompt_t)( IN void * const global_data, IN void * const user_data, IN const pkcs11h_token_id_t token, IN const unsigned retry, OUT char * const pin, IN const size_t pin_max ); /** * @brief Token identifier. */ struct pkcs11h_token_id_s { /** Display for user. */ char display[1024]; /** NULL terminated manufacturerID */ char manufacturerID[sizeof (((CK_TOKEN_INFO *)NULL)->manufacturerID)+1]; /** NULL terminated model */ char model[sizeof (((CK_TOKEN_INFO *)NULL)->model)+1]; /** NULL terminated serialNumber */ char serialNumber[sizeof (((CK_TOKEN_INFO *)NULL)->serialNumber)+1]; /** NULL terminated label */ char label[sizeof (((CK_TOKEN_INFO *)NULL)->label)+1]; }; /** * @brief Get message by return value. * @param rv Return value. * @return CK_RV. */ const char * pkcs11h_getMessage ( IN const CK_RV rv ); /** * @brief Get version of library. * @return version identifier. */ unsigned int pkcs11h_getVersion (void); /** * @brief Get features of library. * @return feature mask @ref PKCS11H_FEATURE_MASK. */ unsigned int pkcs11h_getFeatures (void); /** * @brief Inititalize helper interface. * @return CK_RV. * @see pkcs11h_terminate(). * @attention This function must be called from the main thread. */ CK_RV pkcs11h_initialize (void); /** * @brief Terminate helper interface. * @return CK_RV. * @attention This function must be called from the main thread. */ CK_RV pkcs11h_terminate (void); /** * @brief Set current log level of the helper. * @param flags Current log level @ref PKCS11H_LOG. */ void pkcs11h_setLogLevel ( IN const unsigned flags ); /** * @brief Get current log level. * @return Log level @ref PKCS11H_LOG. */ unsigned pkcs11h_getLogLevel (void); /** * @brief How does the foked process bahaves after POSIX fork() * @param safe Safe mode, default is false. * @return CK_RV. * @attention * This function should be called after @ref pkcs11h_initialize() * @note * This funciton is releavant if @ref PKCS11H_FEATURE_MASK_THREADING is set. * If safe mode is on, the child process can use the loaded PKCS#11 providers * but it cannot use fork(), while it is in one of the hooks functions, since * locked mutexes cannot be released. */ CK_RV pkcs11h_setForkMode ( IN const PKCS11H_BOOL safe ); /** * @brief Set a log callback. * @param hook Callback. * @param global_data Data to send to callback. * @return CK_RV. */ CK_RV pkcs11h_setLogHook ( IN const pkcs11h_hook_log_t hook, IN void * const global_data ); /** * @brief Set a slot event callback. * @param hook Callback. * @param global_data Data to send to callback. * @return CK_RV. * @see pkcs11h_terminate(). * @attention * Calling this function initialize slot event notifications, these * notifications can be started, but never terminate due to PKCS#11 limitation. * @note In order to use slot events you must have threading @ref PKCS11H_FEATURE_MASK_THREADING enabled. */ CK_RV pkcs11h_setSlotEventHook ( IN const pkcs11h_hook_slotevent_t hook, IN void * const global_data ); /** * @brief Set a token prompt callback. * @param hook Callback. * @param global_data Data to send to callback. * @return CK_RV. * @attention * If @ref pkcs11h_setForkMode() is true, you cannot fork while in hook. */ CK_RV pkcs11h_setTokenPromptHook ( IN const pkcs11h_hook_token_prompt_t hook, IN void * const global_data ); /** * @brief Set a pin prompt callback. * @param hook Callback. * @param global_data Data to send to callback. * @return CK_RV. * @attention * If @ref pkcs11h_setForkMode() is true, you cannot fork while in hook. */ CK_RV pkcs11h_setPINPromptHook ( IN const pkcs11h_hook_pin_prompt_t hook, IN void * const global_data ); /** * @brief Set global protected authentication mode. * @param allow_protected_auth Allow protected authentication if enabled by token. * @return CK_RV. * @note Default is on. */ CK_RV pkcs11h_setProtectedAuthentication ( IN const PKCS11H_BOOL allow_protected_auth ); /** * @brief Set global PIN cache timeout. * @param pin_cache_period Cache period in seconds, or @ref PKCS11H_PIN_CACHE_INFINITE. * @return CK_RV. * @note Default is infinite. */ CK_RV pkcs11h_setPINCachePeriod ( IN const int pin_cache_period ); /** * @brief Set global login retries attempts. * @param max_retries Login retries handled by the helper. * @return CK_RV. * @note Default is 3. */ CK_RV pkcs11h_setMaxLoginRetries ( IN const unsigned max_retries ); /** * @brief Add a PKCS#11 provider. * @param reference Reference name for this provider. * @param provider_location Provider library location. * @param allow_protected_auth Allow this provider to use protected authentication. * @param mask_private_mode Provider private mode @ref PKCS11H_PRIVATEMODE_MASK override. * @param slot_event_method Provider slot event @ref PKCS11H_SLOTEVENT_METHOD method. * @param slot_poll_interval Slot event poll interval (If in polling mode), specify 0 for default. * @param cert_is_private Provider's certificate access should be done after login. * @return CK_RV. * @attention This function must be called from the main thread. * @note The global allow_protected_auth must be enabled in order to allow provider specific. */ CK_RV pkcs11h_addProvider ( IN const char * const reference, IN const char * const provider_location, IN const PKCS11H_BOOL allow_protected_auth, IN const unsigned mask_private_mode, IN const unsigned slot_event_method, IN const unsigned slot_poll_interval, IN const PKCS11H_BOOL cert_is_private ); /** * @brief Delete a PKCS#11 provider. * @param reference Reference name for this provider. * @return CK_RV. * @attention This function must be called from the main thread. */ CK_RV pkcs11h_removeProvider ( IN const char * const reference ); /** * @brief Handle special case of POSIX fork() * @return CK_RV. * @attention This function must be called from the main thread. * @attention * This function should be called after fork is called. This is required * due to a limitation of the PKCS#11 standard. * @note The helper library handles fork automatically if @ref PKCS11H_FEATURE_MASK_THREADING * is set by use of pthread_atfork. * When @ref PKCS11H_FEATURE_MASK_THREADING is enabled this function does nothing. */ CK_RV pkcs11h_forkFixup (void); /** * @brief Handle slot rescan. * @return CK_RV. * @attention This function must be called from the main thread. * @remarks * PKCS#11 providers do not allow plug&play, plug&play can be established by * finalizing all providers and initializing them again. * @remarks * The cost of this process is invalidating all sessions, and require user * login at the next access. */ CK_RV pkcs11h_plugAndPlay (void); /** * @brief Logout from all sessions. * @return CK_RV. */ CK_RV pkcs11h_logout (void); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_BASE_H */ 07070100193edf000081a40000000000000000000000014e697e210000154f000000b600010002ffffffffffffffff0000003b00000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-openssl.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_openssl OpenSSL interface * * OpenSSL engine to be used by OpenSSL enabled applications. * * @{ */ /** * @file pkcs11h-openssl.h * @brief pkcs11-helper OpenSSL interface. * @author Alon Bar-Lev * @see pkcs11h_openssl. */ #ifndef __PKCS11H_HELPER_H #define __PKCS11H_HELPER_H #include #include #include #if defined(__cplusplus) extern "C" { #endif /** * @brief OpenSSL RSA cleanup hook. * @param certificate Certificate attached to the RSA object. */ typedef void (*pkcs11h_hook_openssl_cleanup_t) ( IN const pkcs11h_certificate_t certificate ); struct pkcs11h_openssl_session_s; /** * @brief OpenSSL session reference. */ typedef struct pkcs11h_openssl_session_s *pkcs11h_openssl_session_t; /** * @brief Returns an X509 object out of the openssl_session object. * @param certificate Certificate object. * @return X509. */ X509 * pkcs11h_openssl_getX509 ( IN const pkcs11h_certificate_t certificate ); /** * @brief Create OpenSSL session based on a certificate object. * @param certificate Certificate object. * @return OpenSSL session reference. * @note The certificate object will be freed by the OpenSSL interface on session end. * @see pkcs11h_openssl_freeSession(). */ pkcs11h_openssl_session_t pkcs11h_openssl_createSession ( IN const pkcs11h_certificate_t certificate ); /** * @brief Sets cleanup hook * @param openssl_session OpenSSL session reference. * @return Current hook. */ pkcs11h_hook_openssl_cleanup_t pkcs11h_openssl_getCleanupHook ( IN const pkcs11h_openssl_session_t openssl_session ); /** * @brief Sets cleanup hook * @param openssl_session OpenSSL session reference. * @param cleanup hook. */ void pkcs11h_openssl_setCleanupHook ( IN const pkcs11h_openssl_session_t openssl_session, IN const pkcs11h_hook_openssl_cleanup_t cleanup ); /** * @brief Free OpenSSL session. * @param openssl_session OpenSSL session reference. * @note The openssl_session object has a reference count just like other OpenSSL objects. */ void pkcs11h_openssl_freeSession ( IN const pkcs11h_openssl_session_t openssl_session ); /** * @brief Returns an RSA object out of the openssl_session object. * @param openssl_session OpenSSL session reference. * @return RSA. */ RSA * pkcs11h_openssl_session_getRSA ( IN const pkcs11h_openssl_session_t openssl_session ); /** * @brief Returns an X509 object out of the openssl_session object. * @param openssl_session OpenSSL session reference. * @return X509. */ X509 * pkcs11h_openssl_session_getX509 ( IN const pkcs11h_openssl_session_t openssl_session ); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_OPENSSL_H */ 07070100193ed9000081a40000000000000000000000014e697e210000a5ca000000b600010002ffffffffffffffff0000003200000000root/usr/local/include/pkcs11-helper-1.0/pkcs11.h/* pkcs11.h Copyright 2006, 2007 g10 Code GmbH Copyright 2006 Andreas Jellinghaus This file is free software; as a special exception the author gives unlimited permission to copy and/or distribute it, with or without modifications, as long as this notice is preserved. This file is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY, to the extent permitted by law; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. */ /* Please submit changes back to the Scute project at http://www.scute.org/ (or send them to marcus@g10code.com), so that they can be picked up by other projects from there as well. */ /* This file is a modified implementation of the PKCS #11 standard by RSA Security Inc. It is mostly a drop-in replacement, with the following change: This header file does not require any macro definitions by the user (like CK_DEFINE_FUNCTION etc). In fact, it defines those macros for you (if useful, some are missing, let me know if you need more). There is an additional API available that does comply better to the GNU coding standard. It can be switched on by defining CRYPTOKI_GNU before including this header file. For this, the following changes are made to the specification: All structure types are changed to a "struct ck_foo" where CK_FOO is the type name in PKCS #11. All non-structure types are changed to ck_foo_t where CK_FOO is the lowercase version of the type name in PKCS #11. The basic types (CK_ULONG et al.) are removed without substitute. All members of structures are modified in the following way: Type indication prefixes are removed, and underscore characters are inserted before words. Then the result is lowercased. Note that function names are still in the original case, as they need for ABI compatibility. CK_FALSE, CK_TRUE and NULL_PTR are removed without substitute. Use . If CRYPTOKI_COMPAT is defined before including this header file, then none of the API changes above take place, and the API is the one defined by the PKCS #11 standard. */ #ifndef PKCS11_H #define PKCS11_H 1 #if defined(__cplusplus) extern "C" { #endif /* The version of cryptoki we implement. The revision is changed with each modification of this file. If you do not use the "official" version of this file, please consider deleting the revision macro (you may use a macro with a different name to keep track of your versions). */ #define CRYPTOKI_VERSION_MAJOR 2 #define CRYPTOKI_VERSION_MINOR 20 #define CRYPTOKI_VERSION_REVISION 6 /* Compatibility interface is default, unless CRYPTOKI_GNU is given. */ #ifndef CRYPTOKI_GNU #ifndef CRYPTOKI_COMPAT #define CRYPTOKI_COMPAT 1 #endif #endif /* System dependencies. */ #if defined(_WIN32) || defined(CRYPTOKI_FORCE_WIN32) /* There is a matching pop below. */ #pragma pack(push, cryptoki, 1) #ifdef CRYPTOKI_EXPORTS #define CK_SPEC __declspec(dllexport) #else #define CK_SPEC __declspec(dllimport) #endif #else #define CK_SPEC #endif #ifdef CRYPTOKI_COMPAT /* If we are in compatibility mode, switch all exposed names to the PKCS #11 variant. There are corresponding #undefs below. */ #define ck_flags_t CK_FLAGS #define ck_version _CK_VERSION #define ck_info _CK_INFO #define cryptoki_version cryptokiVersion #define manufacturer_id manufacturerID #define library_description libraryDescription #define library_version libraryVersion #define ck_notification_t CK_NOTIFICATION #define ck_slot_id_t CK_SLOT_ID #define ck_slot_info _CK_SLOT_INFO #define slot_description slotDescription #define hardware_version hardwareVersion #define firmware_version firmwareVersion #define ck_token_info _CK_TOKEN_INFO #define serial_number serialNumber #define max_session_count ulMaxSessionCount #define session_count ulSessionCount #define max_rw_session_count ulMaxRwSessionCount #define rw_session_count ulRwSessionCount #define max_pin_len ulMaxPinLen #define min_pin_len ulMinPinLen #define total_public_memory ulTotalPublicMemory #define free_public_memory ulFreePublicMemory #define total_private_memory ulTotalPrivateMemory #define free_private_memory ulFreePrivateMemory #define utc_time utcTime #define ck_session_handle_t CK_SESSION_HANDLE #define ck_user_type_t CK_USER_TYPE #define ck_state_t CK_STATE #define ck_session_info _CK_SESSION_INFO #define slot_id slotID #define device_error ulDeviceError #define ck_object_handle_t CK_OBJECT_HANDLE #define ck_object_class_t CK_OBJECT_CLASS #define ck_hw_feature_type_t CK_HW_FEATURE_TYPE #define ck_key_type_t CK_KEY_TYPE #define ck_certificate_type_t CK_CERTIFICATE_TYPE #define ck_attribute_type_t CK_ATTRIBUTE_TYPE #define ck_attribute _CK_ATTRIBUTE #define value pValue #define value_len ulValueLen #define ck_date _CK_DATE #define ck_mechanism_type_t CK_MECHANISM_TYPE #define ck_mechanism _CK_MECHANISM #define parameter pParameter #define parameter_len ulParameterLen #define ck_mechanism_info _CK_MECHANISM_INFO #define min_key_size ulMinKeySize #define max_key_size ulMaxKeySize #define ck_rv_t CK_RV #define ck_notify_t CK_NOTIFY #define ck_function_list _CK_FUNCTION_LIST #define ck_createmutex_t CK_CREATEMUTEX #define ck_destroymutex_t CK_DESTROYMUTEX #define ck_lockmutex_t CK_LOCKMUTEX #define ck_unlockmutex_t CK_UNLOCKMUTEX #define ck_c_initialize_args _CK_C_INITIALIZE_ARGS #define create_mutex CreateMutex #define destroy_mutex DestroyMutex #define lock_mutex LockMutex #define unlock_mutex UnlockMutex #define reserved pReserved #endif /* CRYPTOKI_COMPAT */ typedef unsigned long ck_flags_t; struct ck_version { unsigned char major; unsigned char minor; }; struct ck_info { struct ck_version cryptoki_version; unsigned char manufacturer_id[32]; ck_flags_t flags; unsigned char library_description[32]; struct ck_version library_version; }; typedef unsigned long ck_notification_t; #define CKN_SURRENDER (0) typedef unsigned long ck_slot_id_t; struct ck_slot_info { unsigned char slot_description[64]; unsigned char manufacturer_id[32]; ck_flags_t flags; struct ck_version hardware_version; struct ck_version firmware_version; }; #define CKF_TOKEN_PRESENT (1 << 0) #define CKF_REMOVABLE_DEVICE (1 << 1) #define CKF_HW_SLOT (1 << 2) #define CKF_ARRAY_ATTRIBUTE (1 << 30) struct ck_token_info { unsigned char label[32]; unsigned char manufacturer_id[32]; unsigned char model[16]; unsigned char serial_number[16]; ck_flags_t flags; unsigned long max_session_count; unsigned long session_count; unsigned long max_rw_session_count; unsigned long rw_session_count; unsigned long max_pin_len; unsigned long min_pin_len; unsigned long total_public_memory; unsigned long free_public_memory; unsigned long total_private_memory; unsigned long free_private_memory; struct ck_version hardware_version; struct ck_version firmware_version; unsigned char utc_time[16]; }; #define CKF_RNG (1 << 0) #define CKF_WRITE_PROTECTED (1 << 1) #define CKF_LOGIN_REQUIRED (1 << 2) #define CKF_USER_PIN_INITIALIZED (1 << 3) #define CKF_RESTORE_KEY_NOT_NEEDED (1 << 5) #define CKF_CLOCK_ON_TOKEN (1 << 6) #define CKF_PROTECTED_AUTHENTICATION_PATH (1 << 8) #define CKF_DUAL_CRYPTO_OPERATIONS (1 << 9) #define CKF_TOKEN_INITIALIZED (1 << 10) #define CKF_SECONDARY_AUTHENTICATION (1 << 11) #define CKF_USER_PIN_COUNT_LOW (1 << 16) #define CKF_USER_PIN_FINAL_TRY (1 << 17) #define CKF_USER_PIN_LOCKED (1 << 18) #define CKF_USER_PIN_TO_BE_CHANGED (1 << 19) #define CKF_SO_PIN_COUNT_LOW (1 << 20) #define CKF_SO_PIN_FINAL_TRY (1 << 21) #define CKF_SO_PIN_LOCKED (1 << 22) #define CKF_SO_PIN_TO_BE_CHANGED (1 << 23) #define CK_UNAVAILABLE_INFORMATION ((unsigned long) -1) #define CK_EFFECTIVELY_INFINITE (0) typedef unsigned long ck_session_handle_t; #define CK_INVALID_HANDLE (0) typedef unsigned long ck_user_type_t; #define CKU_SO (0) #define CKU_USER (1) #define CKU_CONTEXT_SPECIFIC (2) typedef unsigned long ck_state_t; #define CKS_RO_PUBLIC_SESSION (0) #define CKS_RO_USER_FUNCTIONS (1) #define CKS_RW_PUBLIC_SESSION (2) #define CKS_RW_USER_FUNCTIONS (3) #define CKS_RW_SO_FUNCTIONS (4) struct ck_session_info { ck_slot_id_t slot_id; ck_state_t state; ck_flags_t flags; unsigned long device_error; }; #define CKF_RW_SESSION (1 << 1) #define CKF_SERIAL_SESSION (1 << 2) typedef unsigned long ck_object_handle_t; typedef unsigned long ck_object_class_t; #define CKO_DATA (0) #define CKO_CERTIFICATE (1) #define CKO_PUBLIC_KEY (2) #define CKO_PRIVATE_KEY (3) #define CKO_SECRET_KEY (4) #define CKO_HW_FEATURE (5) #define CKO_DOMAIN_PARAMETERS (6) #define CKO_MECHANISM (7) #define CKO_VENDOR_DEFINED ((unsigned long) (1 << 31)) typedef unsigned long ck_hw_feature_type_t; #define CKH_MONOTONIC_COUNTER (1) #define CKH_CLOCK (2) #define CKH_USER_INTERFACE (3) #define CKH_VENDOR_DEFINED ((unsigned long) (1 << 31)) typedef unsigned long ck_key_type_t; #define CKK_RSA (0) #define CKK_DSA (1) #define CKK_DH (2) #define CKK_ECDSA (3) #define CKK_EC (3) #define CKK_X9_42_DH (4) #define CKK_KEA (5) #define CKK_GENERIC_SECRET (0x10) #define CKK_RC2 (0x11) #define CKK_RC4 (0x12) #define CKK_DES (0x13) #define CKK_DES2 (0x14) #define CKK_DES3 (0x15) #define CKK_CAST (0x16) #define CKK_CAST3 (0x17) #define CKK_CAST128 (0x18) #define CKK_RC5 (0x19) #define CKK_IDEA (0x1a) #define CKK_SKIPJACK (0x1b) #define CKK_BATON (0x1c) #define CKK_JUNIPER (0x1d) #define CKK_CDMF (0x1e) #define CKK_AES (0x1f) #define CKK_BLOWFISH (0x20) #define CKK_TWOFISH (0x21) #define CKK_VENDOR_DEFINED ((unsigned long) (1 << 31)) typedef unsigned long ck_certificate_type_t; #define CKC_X_509 (0) #define CKC_X_509_ATTR_CERT (1) #define CKC_WTLS (2) #define CKC_VENDOR_DEFINED ((unsigned long) (1 << 31)) typedef unsigned long ck_attribute_type_t; #define CKA_CLASS (0) #define CKA_TOKEN (1) #define CKA_PRIVATE (2) #define CKA_LABEL (3) #define CKA_APPLICATION (0x10) #define CKA_VALUE (0x11) #define CKA_OBJECT_ID (0x12) #define CKA_CERTIFICATE_TYPE (0x80) #define CKA_ISSUER (0x81) #define CKA_SERIAL_NUMBER (0x82) #define CKA_AC_ISSUER (0x83) #define CKA_OWNER (0x84) #define CKA_ATTR_TYPES (0x85) #define CKA_TRUSTED (0x86) #define CKA_CERTIFICATE_CATEGORY (0x87) #define CKA_JAVA_MIDP_SECURITY_DOMAIN (0x88) #define CKA_URL (0x89) #define CKA_HASH_OF_SUBJECT_PUBLIC_KEY (0x8a) #define CKA_HASH_OF_ISSUER_PUBLIC_KEY (0x8b) #define CKA_CHECK_VALUE (0x90) #define CKA_KEY_TYPE (0x100) #define CKA_SUBJECT (0x101) #define CKA_ID (0x102) #define CKA_SENSITIVE (0x103) #define CKA_ENCRYPT (0x104) #define CKA_DECRYPT (0x105) #define CKA_WRAP (0x106) #define CKA_UNWRAP (0x107) #define CKA_SIGN (0x108) #define CKA_SIGN_RECOVER (0x109) #define CKA_VERIFY (0x10a) #define CKA_VERIFY_RECOVER (0x10b) #define CKA_DERIVE (0x10c) #define CKA_START_DATE (0x110) #define CKA_END_DATE (0x111) #define CKA_MODULUS (0x120) #define CKA_MODULUS_BITS (0x121) #define CKA_PUBLIC_EXPONENT (0x122) #define CKA_PRIVATE_EXPONENT (0x123) #define CKA_PRIME_1 (0x124) #define CKA_PRIME_2 (0x125) #define CKA_EXPONENT_1 (0x126) #define CKA_EXPONENT_2 (0x127) #define CKA_COEFFICIENT (0x128) #define CKA_PRIME (0x130) #define CKA_SUBPRIME (0x131) #define CKA_BASE (0x132) #define CKA_PRIME_BITS (0x133) #define CKA_SUB_PRIME_BITS (0x134) #define CKA_VALUE_BITS (0x160) #define CKA_VALUE_LEN (0x161) #define CKA_EXTRACTABLE (0x162) #define CKA_LOCAL (0x163) #define CKA_NEVER_EXTRACTABLE (0x164) #define CKA_ALWAYS_SENSITIVE (0x165) #define CKA_KEY_GEN_MECHANISM (0x166) #define CKA_MODIFIABLE (0x170) #define CKA_ECDSA_PARAMS (0x180) #define CKA_EC_PARAMS (0x180) #define CKA_EC_POINT (0x181) #define CKA_SECONDARY_AUTH (0x200) #define CKA_AUTH_PIN_FLAGS (0x201) #define CKA_ALWAYS_AUTHENTICATE (0x202) #define CKA_WRAP_WITH_TRUSTED (0x210) #define CKA_HW_FEATURE_TYPE (0x300) #define CKA_RESET_ON_INIT (0x301) #define CKA_HAS_RESET (0x302) #define CKA_PIXEL_X (0x400) #define CKA_PIXEL_Y (0x401) #define CKA_RESOLUTION (0x402) #define CKA_CHAR_ROWS (0x403) #define CKA_CHAR_COLUMNS (0x404) #define CKA_COLOR (0x405) #define CKA_BITS_PER_PIXEL (0x406) #define CKA_CHAR_SETS (0x480) #define CKA_ENCODING_METHODS (0x481) #define CKA_MIME_TYPES (0x482) #define CKA_MECHANISM_TYPE (0x500) #define CKA_REQUIRED_CMS_ATTRIBUTES (0x501) #define CKA_DEFAULT_CMS_ATTRIBUTES (0x502) #define CKA_SUPPORTED_CMS_ATTRIBUTES (0x503) #define CKA_WRAP_TEMPLATE (CKF_ARRAY_ATTRIBUTE | 0x211) #define CKA_UNWRAP_TEMPLATE (CKF_ARRAY_ATTRIBUTE | 0x212) #define CKA_ALLOWED_MECHANISMS (CKF_ARRAY_ATTRIBUTE | 0x600) #define CKA_VENDOR_DEFINED ((unsigned long) (1 << 31)) struct ck_attribute { ck_attribute_type_t type; void *value; unsigned long value_len; }; struct ck_date { unsigned char year[4]; unsigned char month[2]; unsigned char day[2]; }; typedef unsigned long ck_mechanism_type_t; #define CKM_RSA_PKCS_KEY_PAIR_GEN (0) #define CKM_RSA_PKCS (1) #define CKM_RSA_9796 (2) #define CKM_RSA_X_509 (3) #define CKM_MD2_RSA_PKCS (4) #define CKM_MD5_RSA_PKCS (5) #define CKM_SHA1_RSA_PKCS (6) #define CKM_RIPEMD128_RSA_PKCS (7) #define CKM_RIPEMD160_RSA_PKCS (8) #define CKM_RSA_PKCS_OAEP (9) #define CKM_RSA_X9_31_KEY_PAIR_GEN (0xa) #define CKM_RSA_X9_31 (0xb) #define CKM_SHA1_RSA_X9_31 (0xc) #define CKM_RSA_PKCS_PSS (0xd) #define CKM_SHA1_RSA_PKCS_PSS (0xe) #define CKM_DSA_KEY_PAIR_GEN (0x10) #define CKM_DSA (0x11) #define CKM_DSA_SHA1 (0x12) #define CKM_DH_PKCS_KEY_PAIR_GEN (0x20) #define CKM_DH_PKCS_DERIVE (0x21) #define CKM_X9_42_DH_KEY_PAIR_GEN (0x30) #define CKM_X9_42_DH_DERIVE (0x31) #define CKM_X9_42_DH_HYBRID_DERIVE (0x32) #define CKM_X9_42_MQV_DERIVE (0x33) #define CKM_SHA256_RSA_PKCS (0x40) #define CKM_SHA384_RSA_PKCS (0x41) #define CKM_SHA512_RSA_PKCS (0x42) #define CKM_SHA256_RSA_PKCS_PSS (0x43) #define CKM_SHA384_RSA_PKCS_PSS (0x44) #define CKM_SHA512_RSA_PKCS_PSS (0x45) #define CKM_RC2_KEY_GEN (0x100) #define CKM_RC2_ECB (0x101) #define CKM_RC2_CBC (0x102) #define CKM_RC2_MAC (0x103) #define CKM_RC2_MAC_GENERAL (0x104) #define CKM_RC2_CBC_PAD (0x105) #define CKM_RC4_KEY_GEN (0x110) #define CKM_RC4 (0x111) #define CKM_DES_KEY_GEN (0x120) #define CKM_DES_ECB (0x121) #define CKM_DES_CBC (0x122) #define CKM_DES_MAC (0x123) #define CKM_DES_MAC_GENERAL (0x124) #define CKM_DES_CBC_PAD (0x125) #define CKM_DES2_KEY_GEN (0x130) #define CKM_DES3_KEY_GEN (0x131) #define CKM_DES3_ECB (0x132) #define CKM_DES3_CBC (0x133) #define CKM_DES3_MAC (0x134) #define CKM_DES3_MAC_GENERAL (0x135) #define CKM_DES3_CBC_PAD (0x136) #define CKM_CDMF_KEY_GEN (0x140) #define CKM_CDMF_ECB (0x141) #define CKM_CDMF_CBC (0x142) #define CKM_CDMF_MAC (0x143) #define CKM_CDMF_MAC_GENERAL (0x144) #define CKM_CDMF_CBC_PAD (0x145) #define CKM_MD2 (0x200) #define CKM_MD2_HMAC (0x201) #define CKM_MD2_HMAC_GENERAL (0x202) #define CKM_MD5 (0x210) #define CKM_MD5_HMAC (0x211) #define CKM_MD5_HMAC_GENERAL (0x212) #define CKM_SHA_1 (0x220) #define CKM_SHA_1_HMAC (0x221) #define CKM_SHA_1_HMAC_GENERAL (0x222) #define CKM_RIPEMD128 (0x230) #define CKM_RIPEMD128_HMAC (0x231) #define CKM_RIPEMD128_HMAC_GENERAL (0x232) #define CKM_RIPEMD160 (0x240) #define CKM_RIPEMD160_HMAC (0x241) #define CKM_RIPEMD160_HMAC_GENERAL (0x242) #define CKM_SHA256 (0x250) #define CKM_SHA256_HMAC (0x251) #define CKM_SHA256_HMAC_GENERAL (0x252) #define CKM_SHA384 (0x260) #define CKM_SHA384_HMAC (0x261) #define CKM_SHA384_HMAC_GENERAL (0x262) #define CKM_SHA512 (0x270) #define CKM_SHA512_HMAC (0x271) #define CKM_SHA512_HMAC_GENERAL (0x272) #define CKM_CAST_KEY_GEN (0x300) #define CKM_CAST_ECB (0x301) #define CKM_CAST_CBC (0x302) #define CKM_CAST_MAC (0x303) #define CKM_CAST_MAC_GENERAL (0x304) #define CKM_CAST_CBC_PAD (0x305) #define CKM_CAST3_KEY_GEN (0x310) #define CKM_CAST3_ECB (0x311) #define CKM_CAST3_CBC (0x312) #define CKM_CAST3_MAC (0x313) #define CKM_CAST3_MAC_GENERAL (0x314) #define CKM_CAST3_CBC_PAD (0x315) #define CKM_CAST5_KEY_GEN (0x320) #define CKM_CAST128_KEY_GEN (0x320) #define CKM_CAST5_ECB (0x321) #define CKM_CAST128_ECB (0x321) #define CKM_CAST5_CBC (0x322) #define CKM_CAST128_CBC (0x322) #define CKM_CAST5_MAC (0x323) #define CKM_CAST128_MAC (0x323) #define CKM_CAST5_MAC_GENERAL (0x324) #define CKM_CAST128_MAC_GENERAL (0x324) #define CKM_CAST5_CBC_PAD (0x325) #define CKM_CAST128_CBC_PAD (0x325) #define CKM_RC5_KEY_GEN (0x330) #define CKM_RC5_ECB (0x331) #define CKM_RC5_CBC (0x332) #define CKM_RC5_MAC (0x333) #define CKM_RC5_MAC_GENERAL (0x334) #define CKM_RC5_CBC_PAD (0x335) #define CKM_IDEA_KEY_GEN (0x340) #define CKM_IDEA_ECB (0x341) #define CKM_IDEA_CBC (0x342) #define CKM_IDEA_MAC (0x343) #define CKM_IDEA_MAC_GENERAL (0x344) #define CKM_IDEA_CBC_PAD (0x345) #define CKM_GENERIC_SECRET_KEY_GEN (0x350) #define CKM_CONCATENATE_BASE_AND_KEY (0x360) #define CKM_CONCATENATE_BASE_AND_DATA (0x362) #define CKM_CONCATENATE_DATA_AND_BASE (0x363) #define CKM_XOR_BASE_AND_DATA (0x364) #define CKM_EXTRACT_KEY_FROM_KEY (0x365) #define CKM_SSL3_PRE_MASTER_KEY_GEN (0x370) #define CKM_SSL3_MASTER_KEY_DERIVE (0x371) #define CKM_SSL3_KEY_AND_MAC_DERIVE (0x372) #define CKM_SSL3_MASTER_KEY_DERIVE_DH (0x373) #define CKM_TLS_PRE_MASTER_KEY_GEN (0x374) #define CKM_TLS_MASTER_KEY_DERIVE (0x375) #define CKM_TLS_KEY_AND_MAC_DERIVE (0x376) #define CKM_TLS_MASTER_KEY_DERIVE_DH (0x377) #define CKM_SSL3_MD5_MAC (0x380) #define CKM_SSL3_SHA1_MAC (0x381) #define CKM_MD5_KEY_DERIVATION (0x390) #define CKM_MD2_KEY_DERIVATION (0x391) #define CKM_SHA1_KEY_DERIVATION (0x392) #define CKM_PBE_MD2_DES_CBC (0x3a0) #define CKM_PBE_MD5_DES_CBC (0x3a1) #define CKM_PBE_MD5_CAST_CBC (0x3a2) #define CKM_PBE_MD5_CAST3_CBC (0x3a3) #define CKM_PBE_MD5_CAST5_CBC (0x3a4) #define CKM_PBE_MD5_CAST128_CBC (0x3a4) #define CKM_PBE_SHA1_CAST5_CBC (0x3a5) #define CKM_PBE_SHA1_CAST128_CBC (0x3a5) #define CKM_PBE_SHA1_RC4_128 (0x3a6) #define CKM_PBE_SHA1_RC4_40 (0x3a7) #define CKM_PBE_SHA1_DES3_EDE_CBC (0x3a8) #define CKM_PBE_SHA1_DES2_EDE_CBC (0x3a9) #define CKM_PBE_SHA1_RC2_128_CBC (0x3aa) #define CKM_PBE_SHA1_RC2_40_CBC (0x3ab) #define CKM_PKCS5_PBKD2 (0x3b0) #define CKM_PBA_SHA1_WITH_SHA1_HMAC (0x3c0) #define CKM_KEY_WRAP_LYNKS (0x400) #define CKM_KEY_WRAP_SET_OAEP (0x401) #define CKM_SKIPJACK_KEY_GEN (0x1000) #define CKM_SKIPJACK_ECB64 (0x1001) #define CKM_SKIPJACK_CBC64 (0x1002) #define CKM_SKIPJACK_OFB64 (0x1003) #define CKM_SKIPJACK_CFB64 (0x1004) #define CKM_SKIPJACK_CFB32 (0x1005) #define CKM_SKIPJACK_CFB16 (0x1006) #define CKM_SKIPJACK_CFB8 (0x1007) #define CKM_SKIPJACK_WRAP (0x1008) #define CKM_SKIPJACK_PRIVATE_WRAP (0x1009) #define CKM_SKIPJACK_RELAYX (0x100a) #define CKM_KEA_KEY_PAIR_GEN (0x1010) #define CKM_KEA_KEY_DERIVE (0x1011) #define CKM_FORTEZZA_TIMESTAMP (0x1020) #define CKM_BATON_KEY_GEN (0x1030) #define CKM_BATON_ECB128 (0x1031) #define CKM_BATON_ECB96 (0x1032) #define CKM_BATON_CBC128 (0x1033) #define CKM_BATON_COUNTER (0x1034) #define CKM_BATON_SHUFFLE (0x1035) #define CKM_BATON_WRAP (0x1036) #define CKM_ECDSA_KEY_PAIR_GEN (0x1040) #define CKM_EC_KEY_PAIR_GEN (0x1040) #define CKM_ECDSA (0x1041) #define CKM_ECDSA_SHA1 (0x1042) #define CKM_ECDH1_DERIVE (0x1050) #define CKM_ECDH1_COFACTOR_DERIVE (0x1051) #define CKM_ECMQV_DERIVE (0x1052) #define CKM_JUNIPER_KEY_GEN (0x1060) #define CKM_JUNIPER_ECB128 (0x1061) #define CKM_JUNIPER_CBC128 (0x1062) #define CKM_JUNIPER_COUNTER (0x1063) #define CKM_JUNIPER_SHUFFLE (0x1064) #define CKM_JUNIPER_WRAP (0x1065) #define CKM_FASTHASH (0x1070) #define CKM_AES_KEY_GEN (0x1080) #define CKM_AES_ECB (0x1081) #define CKM_AES_CBC (0x1082) #define CKM_AES_MAC (0x1083) #define CKM_AES_MAC_GENERAL (0x1084) #define CKM_AES_CBC_PAD (0x1085) #define CKM_DSA_PARAMETER_GEN (0x2000) #define CKM_DH_PKCS_PARAMETER_GEN (0x2001) #define CKM_X9_42_DH_PARAMETER_GEN (0x2002) #define CKM_VENDOR_DEFINED ((unsigned long) (1 << 31)) struct ck_mechanism { ck_mechanism_type_t mechanism; void *parameter; unsigned long parameter_len; }; struct ck_mechanism_info { unsigned long min_key_size; unsigned long max_key_size; ck_flags_t flags; }; #define CKF_HW (1 << 0) #define CKF_ENCRYPT (1 << 8) #define CKF_DECRYPT (1 << 9) #define CKF_DIGEST (1 << 10) #define CKF_SIGN (1 << 11) #define CKF_SIGN_RECOVER (1 << 12) #define CKF_VERIFY (1 << 13) #define CKF_VERIFY_RECOVER (1 << 14) #define CKF_GENERATE (1 << 15) #define CKF_GENERATE_KEY_PAIR (1 << 16) #define CKF_WRAP (1 << 17) #define CKF_UNWRAP (1 << 18) #define CKF_DERIVE (1 << 19) #define CKF_EXTENSION ((unsigned long) (1 << 31)) /* Flags for C_WaitForSlotEvent. */ #define CKF_DONT_BLOCK (1) typedef unsigned long ck_rv_t; typedef ck_rv_t (*ck_notify_t) (ck_session_handle_t session, ck_notification_t event, void *application); /* Forward reference. */ struct ck_function_list; #define _CK_DECLARE_FUNCTION(name, args) \ typedef ck_rv_t (*CK_ ## name) args; \ ck_rv_t CK_SPEC name args _CK_DECLARE_FUNCTION (C_Initialize, (void *init_args)); _CK_DECLARE_FUNCTION (C_Finalize, (void *reserved)); _CK_DECLARE_FUNCTION (C_GetInfo, (struct ck_info *info)); _CK_DECLARE_FUNCTION (C_GetFunctionList, (struct ck_function_list **function_list)); _CK_DECLARE_FUNCTION (C_GetSlotList, (unsigned char token_present, ck_slot_id_t *slot_list, unsigned long *count)); _CK_DECLARE_FUNCTION (C_GetSlotInfo, (ck_slot_id_t slot_id, struct ck_slot_info *info)); _CK_DECLARE_FUNCTION (C_GetTokenInfo, (ck_slot_id_t slot_id, struct ck_token_info *info)); _CK_DECLARE_FUNCTION (C_WaitForSlotEvent, (ck_flags_t flags, ck_slot_id_t *slot, void *reserved)); _CK_DECLARE_FUNCTION (C_GetMechanismList, (ck_slot_id_t slot_id, ck_mechanism_type_t *mechanism_list, unsigned long *count)); _CK_DECLARE_FUNCTION (C_GetMechanismInfo, (ck_slot_id_t slot_id, ck_mechanism_type_t type, struct ck_mechanism_info *info)); _CK_DECLARE_FUNCTION (C_InitToken, (ck_slot_id_t slot_id, unsigned char *pin, unsigned long pin_len, unsigned char *label)); _CK_DECLARE_FUNCTION (C_InitPIN, (ck_session_handle_t session, unsigned char *pin, unsigned long pin_len)); _CK_DECLARE_FUNCTION (C_SetPIN, (ck_session_handle_t session, unsigned char *old_pin, unsigned long old_len, unsigned char *new_pin, unsigned long new_len)); _CK_DECLARE_FUNCTION (C_OpenSession, (ck_slot_id_t slot_id, ck_flags_t flags, void *application, ck_notify_t notify, ck_session_handle_t *session)); _CK_DECLARE_FUNCTION (C_CloseSession, (ck_session_handle_t session)); _CK_DECLARE_FUNCTION (C_CloseAllSessions, (ck_slot_id_t slot_id)); _CK_DECLARE_FUNCTION (C_GetSessionInfo, (ck_session_handle_t session, struct ck_session_info *info)); _CK_DECLARE_FUNCTION (C_GetOperationState, (ck_session_handle_t session, unsigned char *operation_state, unsigned long *operation_state_len)); _CK_DECLARE_FUNCTION (C_SetOperationState, (ck_session_handle_t session, unsigned char *operation_state, unsigned long operation_state_len, ck_object_handle_t encryption_key, ck_object_handle_t authentiation_key)); _CK_DECLARE_FUNCTION (C_Login, (ck_session_handle_t session, ck_user_type_t user_type, unsigned char *pin, unsigned long pin_len)); _CK_DECLARE_FUNCTION (C_Logout, (ck_session_handle_t session)); _CK_DECLARE_FUNCTION (C_CreateObject, (ck_session_handle_t session, struct ck_attribute *templ, unsigned long count, ck_object_handle_t *object)); _CK_DECLARE_FUNCTION (C_CopyObject, (ck_session_handle_t session, ck_object_handle_t object, struct ck_attribute *templ, unsigned long count, ck_object_handle_t *new_object)); _CK_DECLARE_FUNCTION (C_DestroyObject, (ck_session_handle_t session, ck_object_handle_t object)); _CK_DECLARE_FUNCTION (C_GetObjectSize, (ck_session_handle_t session, ck_object_handle_t object, unsigned long *size)); _CK_DECLARE_FUNCTION (C_GetAttributeValue, (ck_session_handle_t session, ck_object_handle_t object, struct ck_attribute *templ, unsigned long count)); _CK_DECLARE_FUNCTION (C_SetAttributeValue, (ck_session_handle_t session, ck_object_handle_t object, struct ck_attribute *templ, unsigned long count)); _CK_DECLARE_FUNCTION (C_FindObjectsInit, (ck_session_handle_t session, struct ck_attribute *templ, unsigned long count)); _CK_DECLARE_FUNCTION (C_FindObjects, (ck_session_handle_t session, ck_object_handle_t *object, unsigned long max_object_count, unsigned long *object_count)); _CK_DECLARE_FUNCTION (C_FindObjectsFinal, (ck_session_handle_t session)); _CK_DECLARE_FUNCTION (C_EncryptInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_Encrypt, (ck_session_handle_t session, unsigned char *data, unsigned long data_len, unsigned char *encrypted_data, unsigned long *encrypted_data_len)); _CK_DECLARE_FUNCTION (C_EncryptUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len, unsigned char *encrypted_part, unsigned long *encrypted_part_len)); _CK_DECLARE_FUNCTION (C_EncryptFinal, (ck_session_handle_t session, unsigned char *last_encrypted_part, unsigned long *last_encrypted_part_len)); _CK_DECLARE_FUNCTION (C_DecryptInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_Decrypt, (ck_session_handle_t session, unsigned char *encrypted_data, unsigned long encrypted_data_len, unsigned char *data, unsigned long *data_len)); _CK_DECLARE_FUNCTION (C_DecryptUpdate, (ck_session_handle_t session, unsigned char *encrypted_part, unsigned long encrypted_part_len, unsigned char *part, unsigned long *part_len)); _CK_DECLARE_FUNCTION (C_DecryptFinal, (ck_session_handle_t session, unsigned char *last_part, unsigned long *last_part_len)); _CK_DECLARE_FUNCTION (C_DigestInit, (ck_session_handle_t session, struct ck_mechanism *mechanism)); _CK_DECLARE_FUNCTION (C_Digest, (ck_session_handle_t session, unsigned char *data, unsigned long data_len, unsigned char *digest, unsigned long *digest_len)); _CK_DECLARE_FUNCTION (C_DigestUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len)); _CK_DECLARE_FUNCTION (C_DigestKey, (ck_session_handle_t session, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_DigestFinal, (ck_session_handle_t session, unsigned char *digest, unsigned long *digest_len)); _CK_DECLARE_FUNCTION (C_SignInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_Sign, (ck_session_handle_t session, unsigned char *data, unsigned long data_len, unsigned char *signature, unsigned long *signature_len)); _CK_DECLARE_FUNCTION (C_SignUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len)); _CK_DECLARE_FUNCTION (C_SignFinal, (ck_session_handle_t session, unsigned char *signature, unsigned long *signature_len)); _CK_DECLARE_FUNCTION (C_SignRecoverInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_SignRecover, (ck_session_handle_t session, unsigned char *data, unsigned long data_len, unsigned char *signature, unsigned long *signature_len)); _CK_DECLARE_FUNCTION (C_VerifyInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_Verify, (ck_session_handle_t session, unsigned char *data, unsigned long data_len, unsigned char *signature, unsigned long signature_len)); _CK_DECLARE_FUNCTION (C_VerifyUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len)); _CK_DECLARE_FUNCTION (C_VerifyFinal, (ck_session_handle_t session, unsigned char *signature, unsigned long signature_len)); _CK_DECLARE_FUNCTION (C_VerifyRecoverInit, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t key)); _CK_DECLARE_FUNCTION (C_VerifyRecover, (ck_session_handle_t session, unsigned char *signature, unsigned long signature_len, unsigned char *data, unsigned long *data_len)); _CK_DECLARE_FUNCTION (C_DigestEncryptUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len, unsigned char *encrypted_part, unsigned long *encrypted_part_len)); _CK_DECLARE_FUNCTION (C_DecryptDigestUpdate, (ck_session_handle_t session, unsigned char *encrypted_part, unsigned long encrypted_part_len, unsigned char *part, unsigned long *part_len)); _CK_DECLARE_FUNCTION (C_SignEncryptUpdate, (ck_session_handle_t session, unsigned char *part, unsigned long part_len, unsigned char *encrypted_part, unsigned long *encrypted_part_len)); _CK_DECLARE_FUNCTION (C_DecryptVerifyUpdate, (ck_session_handle_t session, unsigned char *encrypted_part, unsigned long encrypted_part_len, unsigned char *part, unsigned long *part_len)); _CK_DECLARE_FUNCTION (C_GenerateKey, (ck_session_handle_t session, struct ck_mechanism *mechanism, struct ck_attribute *templ, unsigned long count, ck_object_handle_t *key)); _CK_DECLARE_FUNCTION (C_GenerateKeyPair, (ck_session_handle_t session, struct ck_mechanism *mechanism, struct ck_attribute *public_key_template, unsigned long public_key_attribute_count, struct ck_attribute *private_key_template, unsigned long private_key_attribute_count, ck_object_handle_t *public_key, ck_object_handle_t *private_key)); _CK_DECLARE_FUNCTION (C_WrapKey, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t wrapping_key, ck_object_handle_t key, unsigned char *wrapped_key, unsigned long *wrapped_key_len)); _CK_DECLARE_FUNCTION (C_UnwrapKey, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t unwrapping_key, unsigned char *wrapped_key, unsigned long wrapped_key_len, struct ck_attribute *templ, unsigned long attribute_count, ck_object_handle_t *key)); _CK_DECLARE_FUNCTION (C_DeriveKey, (ck_session_handle_t session, struct ck_mechanism *mechanism, ck_object_handle_t base_key, struct ck_attribute *templ, unsigned long attribute_count, ck_object_handle_t *key)); _CK_DECLARE_FUNCTION (C_SeedRandom, (ck_session_handle_t session, unsigned char *seed, unsigned long seed_len)); _CK_DECLARE_FUNCTION (C_GenerateRandom, (ck_session_handle_t session, unsigned char *random_data, unsigned long random_len)); _CK_DECLARE_FUNCTION (C_GetFunctionStatus, (ck_session_handle_t session)); _CK_DECLARE_FUNCTION (C_CancelFunction, (ck_session_handle_t session)); struct ck_function_list { struct ck_version version; CK_C_Initialize C_Initialize; CK_C_Finalize C_Finalize; CK_C_GetInfo C_GetInfo; CK_C_GetFunctionList C_GetFunctionList; CK_C_GetSlotList C_GetSlotList; CK_C_GetSlotInfo C_GetSlotInfo; CK_C_GetTokenInfo C_GetTokenInfo; CK_C_GetMechanismList C_GetMechanismList; CK_C_GetMechanismInfo C_GetMechanismInfo; CK_C_InitToken C_InitToken; CK_C_InitPIN C_InitPIN; CK_C_SetPIN C_SetPIN; CK_C_OpenSession C_OpenSession; CK_C_CloseSession C_CloseSession; CK_C_CloseAllSessions C_CloseAllSessions; CK_C_GetSessionInfo C_GetSessionInfo; CK_C_GetOperationState C_GetOperationState; CK_C_SetOperationState C_SetOperationState; CK_C_Login C_Login; CK_C_Logout C_Logout; CK_C_CreateObject C_CreateObject; CK_C_CopyObject C_CopyObject; CK_C_DestroyObject C_DestroyObject; CK_C_GetObjectSize C_GetObjectSize; CK_C_GetAttributeValue C_GetAttributeValue; CK_C_SetAttributeValue C_SetAttributeValue; CK_C_FindObjectsInit C_FindObjectsInit; CK_C_FindObjects C_FindObjects; CK_C_FindObjectsFinal C_FindObjectsFinal; CK_C_EncryptInit C_EncryptInit; CK_C_Encrypt C_Encrypt; CK_C_EncryptUpdate C_EncryptUpdate; CK_C_EncryptFinal C_EncryptFinal; CK_C_DecryptInit C_DecryptInit; CK_C_Decrypt C_Decrypt; CK_C_DecryptUpdate C_DecryptUpdate; CK_C_DecryptFinal C_DecryptFinal; CK_C_DigestInit C_DigestInit; CK_C_Digest C_Digest; CK_C_DigestUpdate C_DigestUpdate; CK_C_DigestKey C_DigestKey; CK_C_DigestFinal C_DigestFinal; CK_C_SignInit C_SignInit; CK_C_Sign C_Sign; CK_C_SignUpdate C_SignUpdate; CK_C_SignFinal C_SignFinal; CK_C_SignRecoverInit C_SignRecoverInit; CK_C_SignRecover C_SignRecover; CK_C_VerifyInit C_VerifyInit; CK_C_Verify C_Verify; CK_C_VerifyUpdate C_VerifyUpdate; CK_C_VerifyFinal C_VerifyFinal; CK_C_VerifyRecoverInit C_VerifyRecoverInit; CK_C_VerifyRecover C_VerifyRecover; CK_C_DigestEncryptUpdate C_DigestEncryptUpdate; CK_C_DecryptDigestUpdate C_DecryptDigestUpdate; CK_C_SignEncryptUpdate C_SignEncryptUpdate; CK_C_DecryptVerifyUpdate C_DecryptVerifyUpdate; CK_C_GenerateKey C_GenerateKey; CK_C_GenerateKeyPair C_GenerateKeyPair; CK_C_WrapKey C_WrapKey; CK_C_UnwrapKey C_UnwrapKey; CK_C_DeriveKey C_DeriveKey; CK_C_SeedRandom C_SeedRandom; CK_C_GenerateRandom C_GenerateRandom; CK_C_GetFunctionStatus C_GetFunctionStatus; CK_C_CancelFunction C_CancelFunction; CK_C_WaitForSlotEvent C_WaitForSlotEvent; }; typedef ck_rv_t (*ck_createmutex_t) (void **mutex); typedef ck_rv_t (*ck_destroymutex_t) (void *mutex); typedef ck_rv_t (*ck_lockmutex_t) (void *mutex); typedef ck_rv_t (*ck_unlockmutex_t) (void *mutex); struct ck_c_initialize_args { ck_createmutex_t create_mutex; ck_destroymutex_t destroy_mutex; ck_lockmutex_t lock_mutex; ck_unlockmutex_t unlock_mutex; ck_flags_t flags; void *reserved; }; #define CKF_LIBRARY_CANT_CREATE_OS_THREADS (1 << 0) #define CKF_OS_LOCKING_OK (1 << 1) #define CKR_OK (0) #define CKR_CANCEL (1) #define CKR_HOST_MEMORY (2) #define CKR_SLOT_ID_INVALID (3) #define CKR_GENERAL_ERROR (5) #define CKR_FUNCTION_FAILED (6) #define CKR_ARGUMENTS_BAD (7) #define CKR_NO_EVENT (8) #define CKR_NEED_TO_CREATE_THREADS (9) #define CKR_CANT_LOCK (0xa) #define CKR_ATTRIBUTE_READ_ONLY (0x10) #define CKR_ATTRIBUTE_SENSITIVE (0x11) #define CKR_ATTRIBUTE_TYPE_INVALID (0x12) #define CKR_ATTRIBUTE_VALUE_INVALID (0x13) #define CKR_DATA_INVALID (0x20) #define CKR_DATA_LEN_RANGE (0x21) #define CKR_DEVICE_ERROR (0x30) #define CKR_DEVICE_MEMORY (0x31) #define CKR_DEVICE_REMOVED (0x32) #define CKR_ENCRYPTED_DATA_INVALID (0x40) #define CKR_ENCRYPTED_DATA_LEN_RANGE (0x41) #define CKR_FUNCTION_CANCELED (0x50) #define CKR_FUNCTION_NOT_PARALLEL (0x51) #define CKR_FUNCTION_NOT_SUPPORTED (0x54) #define CKR_KEY_HANDLE_INVALID (0x60) #define CKR_KEY_SIZE_RANGE (0x62) #define CKR_KEY_TYPE_INCONSISTENT (0x63) #define CKR_KEY_NOT_NEEDED (0x64) #define CKR_KEY_CHANGED (0x65) #define CKR_KEY_NEEDED (0x66) #define CKR_KEY_INDIGESTIBLE (0x67) #define CKR_KEY_FUNCTION_NOT_PERMITTED (0x68) #define CKR_KEY_NOT_WRAPPABLE (0x69) #define CKR_KEY_UNEXTRACTABLE (0x6a) #define CKR_MECHANISM_INVALID (0x70) #define CKR_MECHANISM_PARAM_INVALID (0x71) #define CKR_OBJECT_HANDLE_INVALID (0x82) #define CKR_OPERATION_ACTIVE (0x90) #define CKR_OPERATION_NOT_INITIALIZED (0x91) #define CKR_PIN_INCORRECT (0xa0) #define CKR_PIN_INVALID (0xa1) #define CKR_PIN_LEN_RANGE (0xa2) #define CKR_PIN_EXPIRED (0xa3) #define CKR_PIN_LOCKED (0xa4) #define CKR_SESSION_CLOSED (0xb0) #define CKR_SESSION_COUNT (0xb1) #define CKR_SESSION_HANDLE_INVALID (0xb3) #define CKR_SESSION_PARALLEL_NOT_SUPPORTED (0xb4) #define CKR_SESSION_READ_ONLY (0xb5) #define CKR_SESSION_EXISTS (0xb6) #define CKR_SESSION_READ_ONLY_EXISTS (0xb7) #define CKR_SESSION_READ_WRITE_SO_EXISTS (0xb8) #define CKR_SIGNATURE_INVALID (0xc0) #define CKR_SIGNATURE_LEN_RANGE (0xc1) #define CKR_TEMPLATE_INCOMPLETE (0xd0) #define CKR_TEMPLATE_INCONSISTENT (0xd1) #define CKR_TOKEN_NOT_PRESENT (0xe0) #define CKR_TOKEN_NOT_RECOGNIZED (0xe1) #define CKR_TOKEN_WRITE_PROTECTED (0xe2) #define CKR_UNWRAPPING_KEY_HANDLE_INVALID (0xf0) #define CKR_UNWRAPPING_KEY_SIZE_RANGE (0xf1) #define CKR_UNWRAPPING_KEY_TYPE_INCONSISTENT (0xf2) #define CKR_USER_ALREADY_LOGGED_IN (0x100) #define CKR_USER_NOT_LOGGED_IN (0x101) #define CKR_USER_PIN_NOT_INITIALIZED (0x102) #define CKR_USER_TYPE_INVALID (0x103) #define CKR_USER_ANOTHER_ALREADY_LOGGED_IN (0x104) #define CKR_USER_TOO_MANY_TYPES (0x105) #define CKR_WRAPPED_KEY_INVALID (0x110) #define CKR_WRAPPED_KEY_LEN_RANGE (0x112) #define CKR_WRAPPING_KEY_HANDLE_INVALID (0x113) #define CKR_WRAPPING_KEY_SIZE_RANGE (0x114) #define CKR_WRAPPING_KEY_TYPE_INCONSISTENT (0x115) #define CKR_RANDOM_SEED_NOT_SUPPORTED (0x120) #define CKR_RANDOM_NO_RNG (0x121) #define CKR_DOMAIN_PARAMS_INVALID (0x130) #define CKR_BUFFER_TOO_SMALL (0x150) #define CKR_SAVED_STATE_INVALID (0x160) #define CKR_INFORMATION_SENSITIVE (0x170) #define CKR_STATE_UNSAVEABLE (0x180) #define CKR_CRYPTOKI_NOT_INITIALIZED (0x190) #define CKR_CRYPTOKI_ALREADY_INITIALIZED (0x191) #define CKR_MUTEX_BAD (0x1a0) #define CKR_MUTEX_NOT_LOCKED (0x1a1) #define CKR_FUNCTION_REJECTED (0x200) #define CKR_VENDOR_DEFINED ((unsigned long) (1 << 31)) /* Compatibility layer. */ #ifdef CRYPTOKI_COMPAT #undef CK_DEFINE_FUNCTION #define CK_DEFINE_FUNCTION(retval, name) retval CK_SPEC name /* For NULL. */ #include typedef unsigned char CK_BYTE; typedef unsigned char CK_CHAR; typedef unsigned char CK_UTF8CHAR; typedef unsigned char CK_BBOOL; typedef unsigned long int CK_ULONG; typedef long int CK_LONG; typedef CK_BYTE *CK_BYTE_PTR; typedef CK_CHAR *CK_CHAR_PTR; typedef CK_UTF8CHAR *CK_UTF8CHAR_PTR; typedef CK_ULONG *CK_ULONG_PTR; typedef void *CK_VOID_PTR; typedef void **CK_VOID_PTR_PTR; #define CK_FALSE 0 #define CK_TRUE 1 #ifndef CK_DISABLE_TRUE_FALSE #ifndef FALSE #define FALSE 0 #endif #ifndef TRUE #define TRUE 1 #endif #endif typedef struct ck_version CK_VERSION; typedef struct ck_version *CK_VERSION_PTR; typedef struct ck_info CK_INFO; typedef struct ck_info *CK_INFO_PTR; typedef ck_slot_id_t *CK_SLOT_ID_PTR; typedef struct ck_slot_info CK_SLOT_INFO; typedef struct ck_slot_info *CK_SLOT_INFO_PTR; typedef struct ck_token_info CK_TOKEN_INFO; typedef struct ck_token_info *CK_TOKEN_INFO_PTR; typedef ck_session_handle_t *CK_SESSION_HANDLE_PTR; typedef struct ck_session_info CK_SESSION_INFO; typedef struct ck_session_info *CK_SESSION_INFO_PTR; typedef ck_object_handle_t *CK_OBJECT_HANDLE_PTR; typedef ck_object_class_t *CK_OBJECT_CLASS_PTR; typedef struct ck_attribute CK_ATTRIBUTE; typedef struct ck_attribute *CK_ATTRIBUTE_PTR; typedef struct ck_date CK_DATE; typedef struct ck_date *CK_DATE_PTR; typedef ck_mechanism_type_t *CK_MECHANISM_TYPE_PTR; typedef struct ck_mechanism CK_MECHANISM; typedef struct ck_mechanism *CK_MECHANISM_PTR; typedef struct ck_mechanism_info CK_MECHANISM_INFO; typedef struct ck_mechanism_info *CK_MECHANISM_INFO_PTR; typedef struct ck_function_list CK_FUNCTION_LIST; typedef struct ck_function_list *CK_FUNCTION_LIST_PTR; typedef struct ck_function_list **CK_FUNCTION_LIST_PTR_PTR; typedef struct ck_c_initialize_args CK_C_INITIALIZE_ARGS; typedef struct ck_c_initialize_args *CK_C_INITIALIZE_ARGS_PTR; #define NULL_PTR NULL /* Delete the helper macros defined at the top of the file. */ #undef ck_flags_t #undef ck_version #undef ck_info #undef cryptoki_version #undef manufacturer_id #undef library_description #undef library_version #undef ck_notification_t #undef ck_slot_id_t #undef ck_slot_info #undef slot_description #undef hardware_version #undef firmware_version #undef ck_token_info #undef serial_number #undef max_session_count #undef session_count #undef max_rw_session_count #undef rw_session_count #undef max_pin_len #undef min_pin_len #undef total_public_memory #undef free_public_memory #undef total_private_memory #undef free_private_memory #undef utc_time #undef ck_session_handle_t #undef ck_user_type_t #undef ck_state_t #undef ck_session_info #undef slot_id #undef device_error #undef ck_object_handle_t #undef ck_object_class_t #undef ck_hw_feature_type_t #undef ck_key_type_t #undef ck_certificate_type_t #undef ck_attribute_type_t #undef ck_attribute #undef value #undef value_len #undef ck_date #undef ck_mechanism_type_t #undef ck_mechanism #undef parameter #undef parameter_len #undef ck_mechanism_info #undef min_key_size #undef max_key_size #undef ck_rv_t #undef ck_notify_t #undef ck_function_list #undef ck_createmutex_t #undef ck_destroymutex_t #undef ck_lockmutex_t #undef ck_unlockmutex_t #undef ck_c_initialize_args #undef create_mutex #undef destroy_mutex #undef lock_mutex #undef unlock_mutex #undef reserved #endif /* CRYPTOKI_COMPAT */ /* System dependencies. */ #if defined(_WIN32) || defined(CRYPTOKI_FORCE_WIN32) #pragma pack(pop, cryptoki) #endif #if defined(__cplusplus) } #endif #endif /* PKCS11_H */ 07070100193ede000081a40000000000000000000000014e697e2100001b8d000000b600010002ffffffffffffffff0000003b00000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-engines.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_engines Engines interface * * External dependencies. * * @{ */ /** * @file pkcs11h-engines.h * @brief pkcs11-helper engines definitions. * @author Alon Bar-Lev * @see pkcs11h_engines. */ #ifndef __PKCS11H_ENGINES_H #define __PKCS11H_ENGINES_H #include #if !defined(_WIN32) #include #endif #include #if defined(__cplusplus) extern "C" { #endif /** * @brief System engine. */ typedef struct pkcs11h_sys_engine_s { /** * @brief malloc provider. * @param size Block size. * @return Pointer. */ void *(*malloc) (size_t size); /** * @brief free provider. * @param ptr Pointer. */ void (*free) (void *ptr); /** * @brief time provider. * @return time_t. */ time_t (*time) (void); /** * @brief usleep provider. * @param usec Microseconds. */ void (*usleep) (unsigned long usec); /** * @brief gettimeofday provider (unix). * @param rv timeval. */ #if defined(_WIN32) void *gettimeofday; #else int (*gettimeofday) (struct timeval *tv); #endif } pkcs11h_engine_system_t; /** * @brief Crypto engine. */ typedef struct pkcs11h_crypto_engine_s { void *global_data; /** * @brief Initialize engine. * @param global_data Engine data. * @return None zero - Sucess. */ int (*initialize) ( IN void * const global_data ); /** * @brief Uninitialize engine. * @param global_data Engine data. * @return None zero - Sucess. */ int (*uninitialize) ( IN void * const global_data ); /** * @brief Get exportation date out of certificate. * @param global_data Engine data. * @param blob Certificate blob. * @param blob_size Certificate blob size. * @param expiration Certificate expiration time. * @return None zero - Sucess. */ int (*certificate_get_expiration) ( IN void * const global_data, IN const unsigned char * const blob, IN const size_t blob_size, OUT time_t * const expiration ); /** * @brief Get certificate distinguished name. * @param global_data Engine data. * @param blob Certificate blob. * @param blob_size Certificate blob size. * @param dn dn buffer. * @param dn_max dn buffer size. * @return None zero - Sucess. */ int (*certificate_get_dn) ( IN void * const global_data, IN const unsigned char * const blob, IN const size_t blob_size, OUT char * const dn, IN const size_t dn_max ); /** * @brief Determine if one certificate is an issuer of another. * @param global_data Engine data. * @param issuer_blob Issuer's certificate blob. * @param issuer_blob_size Issuer's certificate blob size. * @param cert_blob Certificate blob. * @param cert_blob_size Certificate blob size. * @return None zero - Sucess. */ int (*certificate_is_issuer) ( IN void * const global_data, IN const unsigned char * const issuer_blob, IN const size_t issuer_blob_size, IN const unsigned char * const cert_blob, IN const size_t cert_blob_size ); } pkcs11h_engine_crypto_t; /** * @brief pkcs11-helper built-in engines. * @addtogroup PKCS11H_ENGINE_CRYPTO * @see pkcs11h_engine_setCrypto(). * @{ */ /** Auto select. */ #define PKCS11H_ENGINE_CRYPTO_AUTO ((pkcs11h_engine_crypto_t *)0) /** Select OpenSSL. */ #define PKCS11H_ENGINE_CRYPTO_OPENSSL ((pkcs11h_engine_crypto_t *)1) /** Select GnuTLS. */ #define PKCS11H_ENGINE_CRYPTO_GNUTLS ((pkcs11h_engine_crypto_t *)2) /** Select Win32. */ #define PKCS11H_ENGINE_CRYPTO_WIN32 ((pkcs11h_engine_crypto_t *)3) /** Select NSS. */ #define PKCS11H_ENGINE_CRYPTO_NSS ((pkcs11h_engine_crypto_t *)4) /** Auto select GPL enigne. */ #define PKCS11H_ENGINE_CRYPTO_GPL ((pkcs11h_engine_crypto_t *)10) /** @} */ /** * @brief Set system engine to be used. * @param engine Engine to use. * @return CK_RV. * @note Must be called before pkcs11h_initialize. * @note Default engine is libc functions. */ CK_RV pkcs11h_engine_setSystem ( IN const pkcs11h_engine_system_t * const engine ); /** * @brief Set crypto engine to be used. * @param engine Engine to use. * @return CK_RV. * @note Must be called before pkcs11h_initialize. * @note Default is provided at configuration time. * @see PKCS11H_ENGINE_CRYPTO */ CK_RV pkcs11h_engine_setCrypto ( IN const pkcs11h_engine_crypto_t * const engine ); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_ENGINES_H */ 07070100193ee0000081a40000000000000000000000014e697e21000017fa000000b600010002ffffffffffffffff0000003900000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-token.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_token Token interface * * Token related functions. * * @{ */ /** * @file pkcs11h-token.h * @brief pkcs11-helper token interface. * @author Alon Bar-Lev * @see pkcs11h_token. */ #ifndef __PKCS11H_TOKEN_H #define __PKCS11H_TOKEN_H #include #if defined(__cplusplus) extern "C" { #endif struct pkcs11h_token_id_list_s; /** * @brief Token identifier list. */ typedef struct pkcs11h_token_id_list_s *pkcs11h_token_id_list_t; /** * @brief Token identifier list. */ struct pkcs11h_token_id_list_s { /** Next element. */ pkcs11h_token_id_list_t next; /** Token id element. */ pkcs11h_token_id_t token_id; }; /** * @brief Free token_id object. * @param token_id Token reference. * @return CK_RV. */ CK_RV pkcs11h_token_freeTokenId ( IN pkcs11h_token_id_t token_id ); /** * @brief Duplicate token_id object. * @param to Target. * @param from Source. * @return CK_RV. * @see pkcs11h_token_freeTokenId(). */ CK_RV pkcs11h_token_duplicateTokenId ( OUT pkcs11h_token_id_t * const to, IN const pkcs11h_token_id_t from ); /** * @brief Returns TRUE if same token id * @param a a. * @param b b. * @return TRUE if same token identifier. */ PKCS11H_BOOL pkcs11h_token_sameTokenId ( IN const pkcs11h_token_id_t a, IN const pkcs11h_token_id_t b ); /** * @brief Force logout. * @param token_id Token to login into. * @return CK_RV. */ CK_RV pkcs11h_token_logout ( IN const pkcs11h_token_id_t token_id ); /** * @brief Force login, avoid hooks. * @param token_id Token to login into. * @param readonly Should session be readonly. * @param pin PIN to login, NULL for protected authentication. * @return CK_RV. */ CK_RV pkcs11h_token_login ( IN const pkcs11h_token_id_t token_id, IN const PKCS11H_BOOL readonly, IN const char * const pin ); /** * @brief Ensure token is accessible. * @param token_id Token id object. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @return CK_RV. */ CK_RV pkcs11h_token_ensureAccess ( IN const pkcs11h_token_id_t token_id, IN void * const user_data, IN const unsigned mask_prompt ); /** * @brief Free certificate_id list. * @param token_id_list List. * @return CK_RV. */ CK_RV pkcs11h_token_freeTokenIdList ( IN const pkcs11h_token_id_list_t token_id_list ); /** * @brief Enumerate available tokens. * @param method Enum method @ref PKCS11H_ENUM_METHOD. * @param p_token_id_list List. * @return CK_RV. * @note Caller must free result. * @see pkcs11h_token_freeTokenIdList(). */ CK_RV pkcs11h_token_enumTokenIds ( IN const unsigned method, OUT pkcs11h_token_id_list_t * const p_token_id_list ); /** * @brief Serialize token_id into string. * @param sz Output string. * @param max Maximum string size. * @param token_id id to serialize * @return CK_RV. * @note sz may be NULL to get size. */ CK_RV pkcs11h_token_serializeTokenId ( OUT char * const sz, IN OUT size_t *max, IN const pkcs11h_token_id_t token_id ); /** * @brief Deserialize token_id from string. * @param p_token_id id. * @param sz Input string. * @return CK_RV. * @note Caller must free result. * @see pkcs11h_token_freeTokenId(). */ CK_RV pkcs11h_token_deserializeTokenId ( OUT pkcs11h_token_id_t *p_token_id, IN const char * const sz ); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_TOKEN_H */ 07070100193eda000081a40000000000000000000000014e697e21000040bf000000b600010002ffffffffffffffff0000003f00000000root/usr/local/include/pkcs11-helper-1.0/pkcs11h-certificate.h/* * Copyright (c) 2005-2011 Alon Bar-Lev * All rights reserved. * * This software is available to you under a choice of one of two * licenses. You may choose to be licensed under the terms of the GNU * General Public License (GPL) Version 2, or the BSD license. * * GNU General Public License (GPL) Version 2 * =========================================== * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 * as published by the Free Software Foundation. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program (see the file COPYING.GPL included with this * distribution); if not, write to the Free Software Foundation, Inc., * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * * BSD License * ============ * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: * * o Redistributions of source code must retain the above copyright notice, * this list of conditions and the following disclaimer. * o Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * o Neither the name of the Alon Bar-Lev nor the names of its * contributors may be used to endorse or promote products derived from * this software without specific prior written permission. * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. */ /** * @addtogroup pkcs11h_certificate Certificate interface * * X.509 certificate interface, provides signature and decryption. * * @{ */ /** * @file pkcs11h-certificate.h * @brief pkcs11-helper certificate functions. * @author Alon Bar-Lev * @see pkcs11h_certificate. */ /** * @example test-certificate.c * * The following example shows some basic usage of the certificate interface. */ #ifndef __PKCS11H_CERTIFICATE_H #define __PKCS11H_CERTIFICATE_H #include #if defined(__cplusplus) extern "C" { #endif struct pkcs11h_certificate_id_s; struct pkcs11h_certificate_s; /** * @brief Certificate id reference. */ typedef struct pkcs11h_certificate_id_s *pkcs11h_certificate_id_t; /** * @brief Certificate object. */ typedef struct pkcs11h_certificate_s *pkcs11h_certificate_t; struct pkcs11h_certificate_id_list_s; /** * @brief Certificate id list. */ typedef struct pkcs11h_certificate_id_list_s *pkcs11h_certificate_id_list_t; /** * @brief Certificate id reference */ struct pkcs11h_certificate_id_s { /** Token id */ pkcs11h_token_id_t token_id; /** displayName for users */ char displayName[1024]; /** CKA_ID of object */ CK_BYTE_PTR attrCKA_ID; /** CKA_ID size */ size_t attrCKA_ID_size; /** Certificate blob (if available) */ unsigned char *certificate_blob; /** Certificate blob size */ size_t certificate_blob_size; }; /** * @brief Certificate id list */ struct pkcs11h_certificate_id_list_s { /** Next element */ pkcs11h_certificate_id_list_t next; /** Certificate id */ pkcs11h_certificate_id_t certificate_id; }; /** * @brief Free certificate_id object. * @param certificate_id Certificate id. * @return CK_RV. */ CK_RV pkcs11h_certificate_freeCertificateId ( IN pkcs11h_certificate_id_t certificate_id ); /** * @brief Duplicate certificate_id object. * @param to Target. * @param from Source. * @return CK_RV. * @note Caller must free result. * @see pkcs11h_certificate_freeCertificateId(). */ CK_RV pkcs11h_certificate_duplicateCertificateId ( OUT pkcs11h_certificate_id_t * const to, IN const pkcs11h_certificate_id_t from ); /** * @brief Sets internal certificate_id blob. * @param certificate_id Certificate id object. * @param blob Certificate blob. * @param blob_size Certificate blob size. * @return CK_RV. * @remarks * Useful to set after deserialization so certificate is available and not read from token. */ CK_RV pkcs11h_certificate_setCertificateIdCertificateBlob ( IN const pkcs11h_certificate_id_t certificate_id, IN const unsigned char * const blob, IN const size_t blob_size ); /** * @brief Free certificate object. * @param certificate Certificate object. * @return CK_RV. */ CK_RV pkcs11h_certificate_freeCertificate ( IN pkcs11h_certificate_t certificate ); /** * @brief Create a certificate object out of certificate_id. * @param certificate_id Certificate id object to be based on. * @param user_data Optional user data, to be passed to hooks. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param pin_cache_period Session specific cache period. * @param p_certificate Receives certificate object. * @note Caller must free result. * @see pkcs11h_certificate_freeCertificate(). * @remarks * The certificate id object may not specify the certificate blob. */ CK_RV pkcs11h_certificate_create ( IN const pkcs11h_certificate_id_t certificate_id, IN void * const user_data, IN const unsigned mask_prompt, IN const int pin_cache_period, OUT pkcs11h_certificate_t * const p_certificate ); /** * @brief Extract user data out of certificate. * @param certificate Certificate object. * @return Mask prompt @ref PKCS11H_PROMPT_MASK. */ unsigned pkcs11h_certificate_getPromptMask ( IN const pkcs11h_certificate_t certificate ); /** * @brief Extract user data out of certificate. * @param certificate Certificate object. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. */ void pkcs11h_certificate_setPromptMask ( IN const pkcs11h_certificate_t certificate, IN const unsigned mask_prompt ); /** * @brief Extract user data out of certificate. * @param certificate Certificate object. * @return User data. */ void * pkcs11h_certificate_getUserData ( IN const pkcs11h_certificate_t certificate ); /** * @brief Extract user data out of certificate. * @param certificate Certificate object. * @param user_data Optional user data, to be passed to hooks. */ void pkcs11h_certificate_setUserData ( IN const pkcs11h_certificate_t certificate, IN void * const user_data ); /** * @brief Get certifiate id object out of a certifiate. * @param certificate Certificate object. * @param p_certificate_id Certificate id object pointer. * @return CK_RV. * @note Caller must free result. * @see pkcs11h_certificate_freeCertificateId(). */ CK_RV pkcs11h_certificate_getCertificateId ( IN const pkcs11h_certificate_t certificate, OUT pkcs11h_certificate_id_t * const p_certificate_id ); /** * @brief Get the certificate blob out of the certificate object. * @param certificate Certificate object. * @param certificate_blob Buffer. * @param p_certificate_blob_size Buffer size. * @return CK_RV. * @note certificate_blob may be NULL in order to get size. */ CK_RV pkcs11h_certificate_getCertificateBlob ( IN const pkcs11h_certificate_t certificate, OUT unsigned char * const certificate_blob, IN OUT size_t * const p_certificate_blob_size ); /** * @brief Serialize certificate_id into a string * @param sz Output string. * @param max Max buffer size. * @param certificate_id id to serialize * @return CK_RV. * @note sz may be NULL in order to get size. */ CK_RV pkcs11h_certificate_serializeCertificateId ( OUT char * const sz, IN OUT size_t *max, IN const pkcs11h_certificate_id_t certificate_id ); /** * @brief Deserialize certificate_id out of string. * @param p_certificate_id id. * @param sz Inut string * @return CK_RV. * @note Caller must free result. * @see pkcs11h_certificate_freeCertificateId(). */ CK_RV pkcs11h_certificate_deserializeCertificateId ( OUT pkcs11h_certificate_id_t * const p_certificate_id, IN const char * const sz ); /** * @brief Ensure certificate is accessible. * @param certificate Certificate object. * @return CK_RV. */ CK_RV pkcs11h_certificate_ensureCertificateAccess ( IN const pkcs11h_certificate_t certificate ); /** * @brief Ensure key is accessible. * @param certificate Certificate object. * @return CK_RV. */ CK_RV pkcs11h_certificate_ensureKeyAccess ( IN const pkcs11h_certificate_t certificate ); /** * @brief Lock session for threded environment. * @param certificate Certificate object. * @return CK_RV. * @remarks * This must be called on threaded environment, so both calls to _sign and * _signRecover and _decrypt will be from the same source. * Failing to lock session, will result with CKR_OPERATION_ACTIVE if * provider is good, or unexpected behaviour for others. * @remarks * It is save to call this also in none threaded environment, it will do nothing. * Call this also if you are doing one stage operation, since locking is not * done by method. */ CK_RV pkcs11h_certificate_lockSession ( IN const pkcs11h_certificate_t certificate ); /** * @brief Releases session lock. * @param certificate Certificate object. * @return CK_RV. * @see pkcs11h_certificate_lockSession(). */ CK_RV pkcs11h_certificate_releaseSession ( IN const pkcs11h_certificate_t certificate ); /** * @brief Sign data. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). * @see pkcs11h_certificate_signAny(). */ CK_RV pkcs11h_certificate_sign ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Sign data. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). * @see pkcs11h_certificate_signAny(). */ CK_RV pkcs11h_certificate_signRecover ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Decrypt data. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). */ CK_RV pkcs11h_certificate_decrypt ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Decrypt data. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). */ CK_RV pkcs11h_certificate_unwrap ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Sign data mechanism determined by key attributes. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). */ CK_RV pkcs11h_certificate_signAny ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Decrypt data mechanism determined by key attributes. * @param certificate Certificate object. * @param mech_type PKCS#11 mechanism. * @param source Buffer to sign. * @param source_size Buffer size. * @param target Target buffer. * @param p_target_size Target buffer size. * @return CK_RV. * @note target may be NULL to get size. * @attention When using in threaded environment session must be locked. * @see pkcs11h_certificate_lockSession(). */ CK_RV pkcs11h_certificate_decryptAny ( IN const pkcs11h_certificate_t certificate, IN const CK_MECHANISM_TYPE mech_type, IN const unsigned char * const source, IN const size_t source_size, OUT unsigned char * const target, IN OUT size_t * const p_target_size ); /** * @brief Free certificate_id list. * @param cert_id_list List. * @return CK_RV. */ CK_RV pkcs11h_certificate_freeCertificateIdList ( IN const pkcs11h_certificate_id_list_t cert_id_list ); /** * @brief Enumerate available certificates on specific token * @param token_id Token id to enum. * @param method How to fetch certificates @ref PKCS11H_ENUM_METHOD. * @param user_data Some user specific data. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param p_cert_id_issuers_list Receives issues list. * @param p_cert_id_end_list Receives end certificates list. * @return CK_RV. * @note p_cert_id_issuers_list may be NULL. * @note Caller must free result. * @note This function will likely take long time. * @see pkcs11h_certificate_freeCertificateIdList(). */ CK_RV pkcs11h_certificate_enumTokenCertificateIds ( IN const pkcs11h_token_id_t token_id, IN const unsigned method, IN void * const user_data, IN const unsigned mask_prompt, OUT pkcs11h_certificate_id_list_t * const p_cert_id_issuers_list, OUT pkcs11h_certificate_id_list_t * const p_cert_id_end_list ); /** * @brief Enumerate available certificates. * @param method How to fetch certificates @ref PKCS11H_ENUM_METHOD. * @param user_data Some user specific data. * @param mask_prompt Allow prompt @ref PKCS11H_PROMPT_MASK. * @param p_cert_id_issuers_list Receives issues list. * @param p_cert_id_end_list Receives end certificates list. * @note p_cert_id_issuers_list may be NULL. * @note Caller must free result. * @note This function will likely take long time. * @see pkcs11h_certificate_freeCertificateIdList(). */ CK_RV pkcs11h_certificate_enumCertificateIds ( IN const unsigned method, IN void * const user_data, IN const unsigned mask_prompt, OUT pkcs11h_certificate_id_list_t * const p_cert_id_issuers_list, OUT pkcs11h_certificate_id_list_t * const p_cert_id_end_list ); #ifdef __cplusplus } #endif /** @} */ #endif /* __PKCS11H_CERTIFICATE_H */ 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!