# PaCkAgE DaTaStReAm pkcs11-helper 1 1810 # end of header 0707010002405f000081a40000000000000000000000014e6993460000012b000000b500010002ffffffffffffffff0000001600000000pkcs11-helper/pkginfoPKG=pkcs11-helper NAME=pkcs11-helper 1.09 i86pc Solaris 10 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 0707010002405e000081a40000000000000000000000014e69934600000a21000000b500010002ffffffffffffffff0000001500000000pkcs11-helper/pkgmap: 1 1810 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 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-certificate.h 0644 root root 16575 28286 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-core.h 0644 root root 14452 49548 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-data.h 0644 root root 6307 53053 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-def.h 0644 root root 3224 57759 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-engines.h 0644 root root 7053 40269 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-openssl.h 0644 root root 5455 57522 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-token.h 0644 root root 6138 38135 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-version.h 0644 root root 3111 46639 1315536529 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/libpkcs11-helper.a 0644 root root 380836 1431 1315536529 1 f none /usr/local/lib/libpkcs11-helper.la 0755 root root 1214 41488 1315536529 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 332652 35261 1315536529 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 1315536529 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 1315536529 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 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.BSD 0644 root root 1544 56868 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.GPL 0644 root root 17989 29856 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/README 0644 root root 1206 40387 1315536530 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 1315536529 1 i checkinstall 790 2504 1315541829 1 i pkginfo 299 23510 1315541830 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!0707010002405f000081a40000000000000000000000014e6993460000012b000000b500010002ffffffffffffffff0000000800000000pkginfoPKG=pkcs11-helper NAME=pkcs11-helper 1.09 i86pc Solaris 10 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 0707010002405e000081a40000000000000000000000014e69934600000a21000000b500010002ffffffffffffffff0000000700000000pkgmap: 1 1810 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 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-certificate.h 0644 root root 16575 28286 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-core.h 0644 root root 14452 49548 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-data.h 0644 root root 6307 53053 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-def.h 0644 root root 3224 57759 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-engines.h 0644 root root 7053 40269 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-openssl.h 0644 root root 5455 57522 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-token.h 0644 root root 6138 38135 1315536529 1 f none /usr/local/include/pkcs11-helper-1.0/pkcs11h-version.h 0644 root root 3111 46639 1315536529 1 d none /usr/local/lib 0755 root root 1 f none /usr/local/lib/libpkcs11-helper.a 0644 root root 380836 1431 1315536529 1 f none /usr/local/lib/libpkcs11-helper.la 0755 root root 1214 41488 1315536529 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 332652 35261 1315536529 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 1315536529 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 1315536529 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 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.BSD 0644 root root 1544 56868 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/COPYING.GPL 0644 root root 17989 29856 1315536530 1 f none /usr/local/share/doc/pkcs11-helper/README 0644 root root 1206 40387 1315536530 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 1315536529 1 i checkinstall 790 2504 1315541829 1 i pkginfo 299 23510 1315541830 07070100024080000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000000800000000install07070100024081000081ed0000000000000000000000014e69934500000316000000b500010002ffffffffffffffff0000001500000000install/checkinstall#!/bin/sh # expected_bits="64" expected_release="5.10" 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 07070100024060000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000000500000000root07070100024061000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000000900000000root/usr07070100024062000041ed0000000000000000000000054e69934600000000000000b500010002ffffffffffffffff0000000f00000000root/usr/local07070100024074000041ed0000000000000000000000054e69934600000000000000b500010002ffffffffffffffff0000001500000000root/usr/local/share0707010002407d000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000001900000000root/usr/local/share/man0707010002407e000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000001e00000000root/usr/local/share/man/man80707010002407f000081a40000000000000000000000014e697e9100000e22000000b500010002ffffffffffffffff0000003000000000root/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. 07070100024077000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000001900000000root/usr/local/share/doc07070100024078000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000002700000000root/usr/local/share/doc/pkcs11-helper0707010002407a000081a40000000000000000000000014e697e9200000608000000b500010002ffffffffffffffff0000003300000000root/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. 07070100024079000081a40000000000000000000000014e697e9200001264000000b500010002ffffffffffffffff0000002f00000000root/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. 0707010002407c000081a40000000000000000000000014e697e92000004b6000000b500010002ffffffffffffffff0000002e00000000root/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 0707010002407b000081a40000000000000000000000014e697e9200004645000000b500010002ffffffffffffffff0000003300000000root/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. 07070100024075000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000001d00000000root/usr/local/share/aclocal07070100024076000081a40000000000000000000000014e697e9100000d61000000b500010002ffffffffffffffff0000003000000000root/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]) ]) 07070100024063000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000001700000000root/usr/local/include07070100024064000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000002900000000root/usr/local/include/pkcs11-helper-1.007070100024068000081a40000000000000000000000014e697e91000018a3000000b500010002ffffffffffffffff0000003800000000root/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 */ 07070100024067000081a40000000000000000000000014e697e9100003874000000b500010002ffffffffffffffff0000003800000000root/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 */ 0707010002406d000081a40000000000000000000000014e697e9100000c27000000b500010002ffffffffffffffff0000003b00000000root/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 */ 07070100024065000081a40000000000000000000000014e697e910000a5ca000000b500010002ffffffffffffffff0000003200000000root/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 */ 0707010002406b000081a40000000000000000000000014e697e910000154f000000b500010002ffffffffffffffff0000003b00000000root/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 */ 07070100024066000081a40000000000000000000000014e697e91000040bf000000b500010002ffffffffffffffff0000003f00000000root/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 */ 0707010002406a000081a40000000000000000000000014e697e9100001b8d000000b500010002ffffffffffffffff0000003b00000000root/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 */ 07070100024069000081a40000000000000000000000014e697e9100000c98000000b500010002ffffffffffffffff0000003700000000root/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 */ 0707010002406c000081a40000000000000000000000014e697e91000017fa000000b500010002ffffffffffffffff0000003900000000root/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 */ 0707010002406e000041ed0000000000000000000000034e69934600000000000000b500010002ffffffffffffffff0000001300000000root/usr/local/lib0707010002406f000081a40000000000000000000000014e697e910005cfa4000000b500010002ffffffffffffffff0000002600000000root/usr/local/lib/libpkcs11-helper.a! / 1315536528 0 0 0 4328 `     ))@@@@lllllllllllllllll*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*d*do4o4o4o4ԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔԔLLLLL****ccccccc_pkcs11h_mem_malloc_pkcs11h_mem_free_pkcs11h_mem_strdup_pkcs11h_mem_duplicatepkcs11h_engine_setSystem_g_pkcs11h_sys_enginepkcs11h_engine_setCrypto.XAKgoyLN6XaO0dB._g_pkcs11h_crypto_engine_openssl.XAKgoyLN6XaO0dB._g_pkcs11h_crypto_engine_gnutls_g_pkcs11h_crypto_engine_pkcs11h_threading_sleep_pkcs11h_threading_mutexInit.XAKgoyLN6XaOkmB.__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.XBKgoyLN6XaOUwB._pkcs11h_util_binaryToHex.x_pkcs11h_util_escapeString.XBKgoyLN6XaOUwB._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.XBKgoyLO6XaOUlC.__pkcs11h_certificate_updateCertificateIdDescription.unknown.XBKgoyLO6XaOUlC.__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// 1315536528 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/ 1315536524 0 0 100644 5988 ` ELFl4(.strtab.text.bss.data.rodata.rodata1.comment.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)@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13Spkcs11h-mem.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-mem.c -W0,-xp.XAKgoyLM6XaOE4A.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLM6XaOE4A.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_mem_malloc=Up;s< rv>unsigned longCK_RVvoidunsignedsize_t_pkcs11h_mem_freeV@U[jpU[`e_pkcs11h_mem_strdupctUdestasrcb char_pkcs11h_mem_duplicatervUn}destnp_dest_sizeo srcpmem_sizeqrvsnsxint __assert    strlen  memset*   * memmove  /  /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 oWt_pkcs11h_mem_malloc#_pkcs11h_mem_freeo_pkcs11h_mem_strdup_pkcs11h_mem_duplicate#WCK_RVsize_t    ` @4&=  "J O T  !Me    (] p :>'4;GT[gow  4 vFFF"HF+4" W@y LZZsj'{E < O P _ <  o \  d pkcs11h-sys.o/ 1315536524 0 0 100644 5844 ` ELFd4(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13pkcs11h-sys.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-sys.c -W0,-xp.XAKgoyLM6XaOE\$A.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLM6XaOE$A.;backend;raw;cd;DBG_GEN 5.3.0__mytime@Ulongtime_t__mysleepF3UusecFunsigned long__mygettimeofdayQ\UetvQintsuseconds_ttimevale tv_sec# tv_usec$# 6unsignedjsize_tvoid   v       pkcs11h_sys_engine_s8 malloc# free# time# usleep# gettimeofday#pkcs11h_engine_system_t_g_pkcs11h_sys_engine8Vpkcs11h_engine_setSystemeUenginedCK_RV usleep jgettimeofday e  time6 char6 >6 H__assertt C M  tmemmove  y jmalloc jfree i /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.hstdio_iso.hpkcs11.h #1 FW f    DD%. : ; @ ' ID $> I: . : ; @ ' D I: ;  . : ; @ ' ID  :  I8 I ' ID  I ' D ' ID 4I?  : ;  .?  : ; @ ' ID &I.? < ' ID .? < ' D .? < ' D EV_g_pkcs11h_sys_engine{pkcs11h_engine_setSystem>u__mytime__mysleep__mygettimeofdaytime_t$suseconds_t6timevalvsize_tpkcs11h_sys_engine_s8pkcs11h_engine_system_tCK_RV @     `V'0FNU *Mq v { qw '3@GS[c4 "+4@ mL CZ;IjB{LZ @d \(n X~ p  L  T  \ /0 1315536525 0 0 100644 25284 ` ELF_4(.strtab.text.bss.data.rodata.rodata1.comment.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.XAKgoyLN6XaO0dB._g_pkcs11h_crypto_engine_openssl.XAKgoyLN6XaO0dB._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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13(pkcs11h-crypto.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-crypto.c -W0,-xp.XAKgoyLN6XaO0dB.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaO0dB.;backend;raw;cd;DBG_GEN 5.3.0__pkcs11h_crypto_openssl_initializeUglobal_dataintvoid__pkcs11h_crypto_openssl_uninitialize2U;;global_data__pkcs11h_crypto_openssl_certificate_get_expirationUddglobal_datablob blob_sizeexpirationx509d2inotBefore notAfter sstm1unsigned charizunsigned size_tlongi asn1_string_st  length# type# data# flags# ASN1_INTEGER char$, asn1_object_st sn1# ln1# nid# length# data# flags# 6ASN1_OBJECT$ ASN1_BOOLEAN ASN1_STRING ASN1_ENUMERATED ASN1_BIT_STRING ASN1_OCTET_STRING ASN1_PRINTABLESTRING2 ASN1_T61STRINGR ASN1_IA5STRINGl ASN1_GENERALSTRING ASN1_BMPSTRING ASN1_UNIVERSALSTRING ASN1_UTCTIME ASN1_GENERALIZEDTIME ASN1_VISIBLESTRING ASN1_UTF8STRING4 ASN1_VALUE_st OASN1_VALUE_  ptr# boolean# asn1_string# object# integer# enumerated# bit_string# octet_string-# printablestringM# t61stringg# ia5string# generalstring# bmpstring# universalstring# utctime# generalizedtime# visiblestring/# utf8stringJ# set# sequence# asn1_valuep# asn1_type_st4 type# valueu# ASN1_TYPE4 X509_algor_st algorithm# parameterD# IX509_ALGOR$$ stack_st9 num# data# sorted# num_alloc# comp# STACK9 buf_mem_st  length# data# max# J BUF_MEM unsigned long X509_name_st entriesE # modified# bytes # hash # X509_NAME ASN1_TIME X509_val_st[ notBefore # notAfter # $ X509_VAL[ $o iy rsa_stX 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 blinding#P mt_blinding#T RSA  ~      , 8 D P \ h t rsa_meth_st8 namet # rsa_pub_enc # rsa_pub_dec # rsa_priv_enc # rsa_priv_dec' # rsa_mod_exp3 # bn_mod_exp? # initK # finishW # flags#$ app_data#( rsa_signc #, rsa_verifyo #0 rsa_keygen{ #4 RSA_METHOD  engine_st ENGINE  bignum_st  d # top# dmax# neg# flags# BIGNUM crypto_ex_data_st ^ skE # dummy# +CRYPTO_EX_DATA bn_mont_ctx_stH  ri# RR# N# Ni#, n0 #@ flags#D sBN_MONT_CTX bn_blinding_st BN_BLINDING $i 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 #@ &DSA DSA_SIG_st U r&# s&# .DSA_SIG Uc!)h dsa_method0  name# dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_exp# bn_mod_exp# init# finish# flags# app_data#$ dsa_paramgen#( dsa_keygen#, DSA_METHOD&$ dh_stL  pad# version# p&# g&# length# pub_key&# priv_key&# flags# method_mont_p# q&#$ j&#( seed#, seedlen#0 counter&#4 references#8 ex_data^#< meth2#D engine #H DH.3?KWc dh_method$  name# generate_key.# compute_key:# bn_mod_expF# initR# finish^# flags# app_data# generate_paramsj# oDH_METHOD- ec_key_st<  ptr# rsa # dsa# dh7# ecH# evp_pkey_st  type# save_type# references# pkeyM# save_parameters# attributesE # EVP_PKEY  X509_pubkey_st f algor# public_key# pkey# !X509_PUBKEYf ASN1_ENCODING_st  enc# len# modified# }ASN1_ENCODING x509_cinf_st4 version# serialNumber# signature# issuer # validityj # subject # keyx# issuerUID# subjectUID# extensionsE #$ enc#( X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_st X509_POLICY_CACHEi x509_cert_aux_sts trustE # rejectE # aliasJ# keyid-# otherE # X509_CERT_AUXs x509_st\ cert_info# 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 aux#X X509i__pkcs11_openssl_d2i_t tm$ tm_sec# tm_min# tm_hour# tm_mday# tm_mon# tm_year# tm_wday# tm_yday# tm_isdst# __pkcs11h_crypto_openssl_certificate_get_dnRUaaglobal_datapblob ublob_sizezdndn_maxx509d2iifk__pkcs11h_crypto_openssl_certificate_is_issuer0&Uglobal_data+issuer_blob, issuer_blob_size-cert_blob.cert_blob_size/x509_issuer1x509_cert2pub_issuer3d2i4is_issuer5ii PKCS11H_BOOL  ,8D pkcs11h_crypto_engine_s global_data# initialize# uninitialize'# certificate_get_expiration3# certificate_get_dn?# certificate_is_issuerK# Ppkcs11h_engine_crypto_t_g_pkcs11h_crypto_engine_openssl&|__pkcs11h_crypto_gnutls_initialize]Uglobal_data__pkcs11h_crypto_gnutls_uninitializewU  global_data__pkcs11h_crypto_gnutls_certificate_get_expirationU  global_data/blob 4blob_size9expirationcertYdatumnownotBeforenotAfteri%* gnutls_x509_crt_int> Tgnutls_x509_crt_t data# size# qgnutls_datum_t time_t__pkcs11h_crypto_gnutls_certificate_get_dn+ U  global_data blob  blob_size dn dn_maxcertYdatumsi  __pkcs11h_crypto_gnutls_certificate_is_issuer- U!!global_data("issuer_blob) "issuer_blob_size*"cert_blob+"cert_blob_size,cert_issuerY.cert_certY/datum0is_issuer1result2i!!i ""_g_pkcs11h_crypto_engine_gnutls!"{_g_pkcs11h_crypto_engine[pkcs11h_engine_setCryptog U""#enginef_engine#hrv"i CK_RVP"# #T#gnutls_x509_crt_verifya#T## gnutls_x509_crt_inta#gnutls_x509_crt_get_expiration_time#w#gnutls_x509_crt_get_activation_time#w#gnutls_x509_crt_get_dn$T#q$\$GNUTLS_X509_FMT_DERGNUTLS_X509_FMT_PEMgnutls_x509_crt_import$T#$($gnutls_x509_crt_deinit$TTgnutls_x509_crt_init$$gnutls_global_deinitgnutls_global_init % #%X509_NAME_cmpS%%(%X509_get_pubkey{%S%X509_get_subject_name %{%X509_get_issuer_name %{% X509_NAME_oneline&%i &&d2i_X509?&&&X509_free]&?&X509_newX509_cmp_current_time&o&X509_verify&?&&EVP_PKEY_free&&OpenSSL_add_all_digeststime''mktime<''<'localtimeF'h'A'h'gmtimeF''m'$'$'__assert'''memset'' memmove'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' ID I !I/ I. : ;@ ' ID I: ; 4I : ;  : 4I?  : ; .?  : ;@ ' ID .? < ' ID  : ( .? < ' D .? < ' D .? < ' ID .? < ' ID H(U"_g_pkcs11h_crypto_engine~"pkcs11h_engine_setCrypto(z__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_issuer!(size_tasn1_string_st ASN1_INTEGER6asn1_object_stASN1_OBJECTASN1_BOOLEANASN1_STRINGASN1_ENUMERATEDASN1_BIT_STRINGASN1_OCTET_STRING2ASN1_PRINTABLESTRINGRASN1_T61STRINGlASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRINGASN1_UTCTIMEASN1_GENERALIZEDTIMEASN1_VISIBLESTRING4ASN1_UTF8STRING_ASN1_VALUEuasn1_type_st4ASN1_TYPEIX509_algor_stX509_ALGORstack_st9 STACKJ buf_mem_st BUF_MEM X509_name_st X509_NAME ASN1_TIME$ X509_val_st[ X509_VAL RSA rsa_meth_st RSA_METHOD ENGINE bignum_stBIGNUM+crypto_ex_data_st^CRYPTO_EX_DATAsbn_mont_ctx_stBN_MONT_CTXBN_BLINDING rsa_stDSA.DSA_SIG_stUDSA_SIGdsa_methodDSA_METHOD&dsa_stDHodh_methodDH_METHODdh_stMevp_pkey_st EVP_PKEY!X509_pubkey_stfX509_PUBKEY}ASN1_ENCODING_stASN1_ENCODINGx509_cinf_stX509_CINFX509_POLICY_CACHEx509_cert_aux_stsX509_CERT_AUXx509_stX509__pkcs11_openssl_d2i_ttmPKCS11H_BOOLPpkcs11h_crypto_engine_spkcs11h_engine_crypto_tYgnutls_x509_crt_tqgnutls_datum_ttime_t"CK_RV($W(+_g_pkcs11h_crypto_engine_openssl&"_g_pkcs11h_crypto_engine_gnutls @4B``0-`G [50 cdmnyz     ,<Q_ky1H_ xafk= T |!z"#"$"%+05afk&',%'Kc(&)*+,% %7-g./0G1_2p34!&+UZ_015 4` e j     0 0 1; 1_ 6 4 4 8 9* 8> 9i :n ;   $ ( , vx|37<@EIW8 G K   Q"9z":"7"(08BJT^fnv~(08BLT\fsz &08@HPX`hpz  $,4<DLV^fnx  $,4<FPX`jrz "*4<FNX`jrz7 &.8BJT^fp4  GH`0"p+4(@>zL!GZHLj4(.strtab.text.bss.data.rodata.comment.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_funcnames.debug_typenames.debug_varnames.symtabpkcs11h-threading.c___pkcs11h_thread_startBbss.bssDdata.dataDrodata.rodata_pkcs11h_threading_sleep_g_pkcs11h_sys_engine_pkcs11h_threading_mutexInit.XAKgoyLN6XaOkmB.__s_pkcs11h_threading_mutex_list_pkcs11h_threading_mutexLock_pkcs11h_mem_mallocpthread_mutex_init_pkcs11h_mem_free_pkcs11h_threading_mutexReleasepthread_mutex_lockpthread_mutex_unlock_pkcs11h_threading_mutexFreepthread_mutex_destroy_pkcs1h_threading_mutexLockAllpthread_mutex_trylock_pkcs1h_threading_mutexReleaseAll_pkcs11h_threading_condSignalpthread_cond_signal_pkcs11h_threading_condInitpthread_cond_init_pkcs11h_threading_condWaitpthread_cond_waitpthread_cond_timedwait_pkcs11h_threading_condFreesigemptysetsigaddsetpthread_sigmask_pkcs11h_threading_threadStartpthread_create_pkcs11h_threading_threadJoinpthread_join.rel.text.rel.debug_info.rel.debug_line.rel.debug_pubnames.rel.debug_funcnames.rel.debug_typenames.rel.debug_varnamesUU ȍ++jQ ЃÐUEEEjhEEtlEj EPEEtIjEPt E+EUPEPEEEEtjEPEtjhEEEEÐUEjEPt EEEEÐUEjEPt E EEEEÐUEEEjhtEEEt-E@;Et"EEE@EEt E@;EuދEt2EuE@EU@BjEPjEPEtjhEEEÐUEEEjht3EEEtE@E@EEuEEEEtKEtCEj@Pu E@EE@EEtEuEuxEEt7E@uEj@PE@E@EEujhjhjh EE EtjhEÐUEEjhtEEEEt,Ej@PE@E@EEuԋEtjhEÐUEEjPu)jEPuEjPt E EEEEÐUEEjPu)jEPuEjPt E EEEEÐU]EE u,EPEPt EjEPЃt EqE +U‰EU ȍ++ڋE +ÉEUEPBPEP t E EEEE]ÐUEjPEEÐU EEjEPEE}EPEPE@EE|jEPj UEj@PBЃEjEPEEEÐU EEjEPEEtDEU PEUPjjEPhjEPt EEEEEÐUEj@PE@EEXM@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)signal.h 1.43 04/09/28 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)signal_iso.h 1.1 99/08/09 SMI@(#)signal_iso.h 1.6 03/05/02 SMI@(#)unistd.h 1.43 06/03/10 SMI@(#)signal.h 1.66 04/09/28 SMI@(#)siginfo.h 1.59 04/07/15 SMI@(#)machsig.h 1.11 03/09/26 SMI@(#)faultcode.h 1.16 09/07/02 SMI@(#)procset.h 1.25 04/07/16 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13pkcs11h-threading.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-threading.c -W0,-xp.XAKgoyLN6XaOkmB.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaOkmB.;backend;raw;cd;DBG_GEN 5.3.0unsigned shortuint16_tunsigned charuint8_t___pthread_mutex_flag1#__pthread_mutex_flag2#__pthread_mutex_ceiling#__pthread_mutex_type#__pthread_mutex_magic#longx___pthread_mutex_padg#unsigneduint32_t__pthread_ownerpid#__pthread_lockword#unsigned long longupad64_t__pthread_mutex_lock64x#__pthread_mutex_lock32#__pthread_mutex_owner64 # _pthread_mutex__pthread_mutex_flags#__pthread_mutex_lock#__pthread_mutex_data #_pkcs11h_mutex_t * intPKCS11H_BOOL __pkcs11h_threading_mutex_entry_s next#p_mutex #locked# __pkcs11h_threading_mutex_entry_t mutex#head#__s_pkcs11h_threading_mutex_listU_pkcs11h_threading_sleep^*U66milli]_pkcs11h_threading_mutexIniteUmutexdrvf=entrytmutex_lockeduunsigned longCK_RV _pkcs11h_threading_mutexLockVUJJmutexrv _pkcs11h_threading_mutexReleaseUmutexrv _pkcs11h_threading_mutexFreeUFFmutex~lastentrymutex_locked _pkcs1h_threading_mutexLockAllUentrymutex_lockedall_mutexes_lockedok_pkcs1h_threading_mutexReleaseAllCUtentryDmutex_lockedE_pkcs11h_threading_condSignalaU cond`rvb_> __pthread_cond_flag#__pthread_cond_type#__pthread_cond_magic# _pthread_cond __pthread_cond_flags#__pthread_cond_data #> pthread_cond_tpthread_mutex_t( cond #mut #  _pkcs11h_threading_condInit}U= = cond|rv~ _pkcs11h_threading_condWaitqU  cond milli rv\\\now timeoutO  _time_t_suseconds_t timevalO tv_sec #tv_usec # timespec tv_sec #tv_nsec_#_pkcs11h_threading_condFreeU  cond ___pkcs11h_thread_start8Uj b j p_data signal_mask retj ivoid b j  j o  _pkcs11h_thread_start_t  start #dataj # ___pkcs11h_thread_data_t  _  __sigbits # sigset_t _pkcs11h_threading_threadStartU  thread start j data_data rv   _pkcs11h_threading_threadJoin3Uthread2 > O !pthread_cond_timedwait_&pthread_cond_waitpthread_cond_signal _pthread_condattr__pthread_condattrpj # pthread_cond_initpthread_mutex_trylockCpthread_mutex_unlockkpthread_mutex_lockpthread_mutex_destroy _pthread_mutexattr__pthread_mutexattrpj # pthread_mutex_init' j pthread_joinQ' _pthread_attr__pthread_attrpj #Q j  pthread_create j b  _pkcs11h_mem_freeb   _pkcs11h_mem_mallocD D pthread_sigmaskINsigemptysetNsigaddsetN /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 .? < ' ID _pkcs11h_threading_sleep;_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexLockO_pkcs11h_threading_mutexRelease_pkcs11h_threading_mutexFreeK_pkcs1h_threading_mutexLockAll_pkcs1h_threading_mutexReleaseAllt_pkcs11h_threading_condSignal _pkcs11h_threading_condInitB _pkcs11h_threading_condWait _pkcs11h_threading_condFree" _pkcs11h_threading_threadStart _pkcs11h_threading_threadJoin* ___pkcs11h_thread_startuint16_tuint8_txuint32_t upad64_t_pthread_mutex_pkcs11h_mutex_tPKCS11H_BOOL*__pkcs11h_threading_mutex_entry_s__pkcs11h_threading_mutex_entry_tCK_RV> _pthread_cond pthread_cond_t pthread_mutex_t  time_t suseconds_t timevalO timespec _pkcs11h_thread_start_t ___pkcs11h_thread_data_t  sigset_t_pthread_condattr_pthread_mutexattrQ_pthread_attr3__s_pkcs11h_threading_mutex_list     *%0Bt 6`>/Edz j j*A#]is@~-NSv4t/KYkp + m7<Tm#7J%`'E(*+,&[.0 | ]atxpt0!4" $ d &h        )   G -K  /  )3;CKS]eow #07CMU]go|#+3=JQ]emu}!+3;EOYais}!!)6"=IS[cmu$& '/7?GQYf)my- )1;CKU]j/q}    4X }   " +7P$C+Q-af/.r/171 4 6x 8 =  = / = D =  pkcs11h-util.o/ 1315536525 0 0 100644 10972 ` ELFl'4(.strtab.text.bss.data.rodata.rodata1.comment.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.XBKgoyLN6XaOUwB._pkcs11h_util_binaryToHex.x_pkcs11h_util_escapeStringstrchr.XBKgoyLN6XaOUwB._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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13pkcs11h-util.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-util.c -W0,-xp.XAKgoyLN6XaOUwB.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaOUwB.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_util_fixupFixedString<Utarget9 source: )length;p=charunsignedsize_t _pkcs11h_util_hexToBinaryQUratargetNsourceO p_target_sizePtarget_max_sizeRpSbufTiU  y y r r r k &k &kvd Cunsigned longaCK_RVunsigned char~long  int _pkcs11h_util_binaryToHexUrtarget{target_size| source}source_size~xi~ _pkcs11h_util_escapeStringUryytargetsource maxinvalid_charsxrvrstn~ _pkcs11h_util_unescapeStringUrtarget source maxrvrstn {^ N N G        bu / /9__asserte4>estrchrjvoidmemmovesscanf /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 v_pkcs11h_util_fixupFixedString._pkcs11h_util_hexToBinary_pkcs11h_util_binaryToHex_pkcs11h_util_escapeString_pkcs11h_util_unescapeString#size_trCK_RV]x#x     #*Dq  B G L  #J O T~  + 4     s  E J O # (U Z _    r MQ !&*/38<i/aejnsw| &.6>FNV^fnv~",4AHT\dlv~ *4>FNV`hrz (08BLT\dnv   4O @ @ H "L p+ 4P@LLBZDj'{<  ! ! \#  T' & \' ; d' /39 1315536525 0 0 100644 39596 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/134pkcs11h-session.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-session.c -W0,-xp.XAKgoyLN6XaO02B.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaO02B.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_session_getSlotListC,UVEM provider?a token_present@ k pSlotListAp pulCountB_slots D_slotnum ErvVFunsigned longECK_RVH _pkcs11h_provider_tint|PKCS11H_BOOLcharlong !  void unsigned char _CK_VERSION major# minor#E) )CK_C_InitializeEU DUCK_C_Finalize   ECK_FLAGS    _CK_INFOL cryptokiVersion# manufacturerIDn# flags#$ libraryDescription#( libraryVersion#H E5 $5CK_C_GetInfo Q MEhR WhCK_C_GetFunctionListECK_SLOT_ID  EE CK_C_GetSlotList @ ?    _CK_SLOT_INFOh slotDescription# manufacturerID#@ flags#` hardwareVersion#d firmwareVersion#f E CK_C_GetSlotInfo              _CK_TOKEN_INFO label# manufacturerID# model#@ serialNumber#P flags#` ulMaxSessionCountE#d ulSessionCountE#h ulMaxRwSessionCountE#l ulRwSessionCountE#p ulMaxPinLenE#t ulMinPinLenE#x ulTotalPublicMemoryE#| ulFreePublicMemoryE# ulTotalPrivateMemoryE# ulFreePrivateMemoryE# hardwareVersion# firmwareVersion# utcTime# E CK_C_GetTokenInfoECK_MECHANISM_TYPE E,  ,CK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySizeE# ulMaxKeySizeE# flags# ME CK_C_GetMechanismInfo E E  CK_C_InitTokenECK_SESSION_HANDLEES  E 8 S CK_C_InitPINE  EE k  CK_C_SetPINECK_NOTIFICATIONE     CK_NOTIFY E    CK_C_OpenSessionED  3 D CK_C_CloseSessionEr  a r CK_C_CloseAllSessionsECK_STATE _CK_SESSION_INFO slotID# state # flags# ulDeviceErrorE# E     CK_C_GetSessionInfoEQ   6 Q CK_C_GetOperationStateECK_OBJECT_HANDLEE  Es s  CK_C_SetOperationStateECK_USER_TYPEE   E  CK_C_LoginE+   + CK_C_LogoutECK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  typeB # pValue# ulValueLenE# Z s E   E  CK_C_CreateObjectE  s  E  CK_C_CopyObjectE<  s & < CK_C_DestroyObjectEu  s  Z u CK_C_GetObjectSizeE  s  E  CK_C_GetAttributeValueE  s  E  CK_C_SetAttributeValueE2  E 2CK_C_FindObjectsInitEr  E RrCK_C_FindObjectsE CK_C_FindObjectsFinal _CK_MECHANISM  mechanism# pParameter# ulParameterLenE# E2 s 2CK_C_EncryptInitEs E NsCK_C_EncryptE E CK_C_EncryptUpdateE  CK_C_EncryptFinalE! s !CK_C_DecryptInitEb E =bCK_C_DecryptE E zCK_C_DecryptUpdateE  CK_C_DecryptFinalE    CK_C_DigestInitEK E &KCK_C_DigestE} E b}CK_C_DigestUpdateE s CK_C_DigestKeyE  CK_C_DigestFinalE s CK_C_SignInitEZ E 5ZCK_C_SignE E oCK_C_SignUpdateE  CK_C_SignFinalE s CK_C_SignRecoverInitE: E :CK_C_SignRecoverEq s VqCK_C_VerifyInitE EE CK_C_VerifyE E CK_C_VerifyUpdateE E CK_C_VerifyFinalER s 7RCK_C_VerifyRecoverInitE E tCK_C_VerifyRecoverE E CK_C_DigestEncryptUpdateE% E %CK_C_DecryptDigestUpdateEn E InCK_C_SignEncryptUpdateE E CK_C_DecryptVerifyUpdateE  E CK_C_GenerateKeyEN  E E  NCK_C_GenerateKeyPairE s s  nCK_C_WrapKeyE s E E CK_C_UnwrapKeyE( s  E (CK_C_DeriveKeyE] E B]CK_C_SeedRandomE E xCK_C_GenerateRandomE CK_C_GetFunctionStatusE CK_C_CancelFunctionE0 0CK_C_WaitForSlotEvent_CK_FUNCTION_LIST version# C_Initialize.# C_FinalizeZ# C_GetInfo:# C_GetFunctionListm# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismList1# C_GetMechanismInfo#$ C_InitToken #( C_InitPINX #, C_SetPIN #0 C_OpenSession #4 C_CloseSessionI #8 C_CloseAllSessionsw #< C_GetSessionInfo #@ C_GetOperationStateV #D C_SetOperationState #H C_Login #L C_Logout0 #P C_CreateObject #T C_CopyObject #X C_DestroyObjectA #\ C_GetObjectSizez #` C_GetAttributeValue #d C_SetAttributeValue #h C_FindObjectsInit7#l C_FindObjectsw#p C_FindObjectsFinal#t C_EncryptInit7#x C_Encryptx#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInit&# C_Decryptg# C_DecryptUpdate# C_DecryptFinal# C_DigestInit# C_DigestP# C_DigestUpdate# C_DigestKey# C_DigestFinal# C_SignInit!# C_Sign_# C_SignUpdate# C_SignFinal# C_SignRecoverInit# C_SignRecover?# C_VerifyInitv# C_Verify# C_VerifyUpdate# C_VerifyFinal # C_VerifyRecoverInitW# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdate*# C_SignEncryptUpdates# C_DecryptVerifyUpdate# C_GenerateKey# C_GenerateKeyPairS# C_WrapKey# C_UnwrapKey# C_DeriveKey-# C_SeedRandomb# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction# C_WaitForSlotEvent5#MCK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t_pkcs11h_provider_sTH nextb# 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# bCK_BBOOLR f CK_ULONG_PTRCK_SLOT_ID_PTRECK_ULONG_pkcs11h_session_getObjectAttributesOUVL!K'sessionP'object l'attrsq'countrvViF'_pkcs11h_session_tx! !!  !  !  !!  pkcs11h_token_id_sd4" displaye!# manufacturerIDx!# model!# serialNumber!# label!# !4"pkcs11h_token_id_ttime_t#pkcs11h_certificate_id_list_t"CK_BYTE_PTRsize_t pkcs11h_certificate_id_sb# token_id9"# displayName"# attrCKA_ID"# attrCKA_ID_size"# certificate_blob# certificate_blob_size"# "b#pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s# next_"# certificate_idg## #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_lockJ%# __pthread_mutex_data;%#%_pkcs11h_mutex_t _pkcs11h_session_sDF' nextL!# reference_count|# valid# providerb# token_id9"# session_handle # allow_protected_auth_supported# pin_cache_period|# pin_expire_timeR"# cached_certs_"#$ touch#( mutex&#, 6&L!s  CK_ATTRIBUTE_PTRU'_pkcs11h_session_freeObjectAttributesFUV''attrs'count iU'_pkcs11h_session_findObjects` UV))session)filter )filter_attrs)p_objects)p_objects_foundshould_FindObjectsFinal objects  objects_size  objects_buffer)objects_found oLasts rvVFLFLtemp 9L!Z )) f s ) c_pkcs11h_session_getSessionByTokenId< UV**token_id*p_session mutex_lockedhave_session_mutexsessionL!current_sessionL!rvV9" F'*_pkcs11h_session_release  UV;+;+session mutex_lockedrvVL!_pkcs11h_session_resetDUV,-,-session@1-user_dataA 6-mask_promptB;-p_slotCfoundErvVGnRetryI4((current_providerbd;slots nslotnum oslot_indexpptoken_id9"info@-\(h(h(canceledL! CK_TOKEN_INFO_pkcs11h_session_getObjectByIdWUVP.P.session k.class  p.idu.id_sizez.p_handlefilter.objects objects_found rvVCL!ECK_OBJECT_CLASSU."" Z CK_ATTRIBUTE .. _pkcs11h_session_validateZUV..sessionYrvV[L!__pkcs11h_session_touchUVI/I/sessionL!_pkcs11h_session_login UV00session0is_publicOnly 0readonly0user_data0mask_promptslotrvVhlogin_succeededretry_countutfPIN0lPINLength pin1L!CK_UTF8CHAR_PTR1_pkcs11h_session_logoutcUVZ1Z1sessionbL! 4"d1_pkcs11h_token_getTokenIdV1_1i1 11_pkcs11h_log111 %1_pkcs11h_threading_mutexFreeV211_pkcs11h_threading_mutexReleaseVH221_pkcs11h_threading_mutexLockV}2H21_pkcs11h_threading_mutexInitV2}2 2 22_pkcs11h_mem_freeV22 2 22_pkcs11h_mem_mallocV03224"4"pkcs11h_token_sameTokenIdl30353d14"pkcs11h_token_duplicateTokenIdV3l3q3 !pkcs11h_token_freeTokenIdV33E 3pkcs11h_getMessage343 4 4__assertJ44#4| J4strlen"n4O4memset4| 4memmove4. /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_getSlotList _pkcs11h_session_getObjectAttributesv'_pkcs11h_session_freeObjectAttributes'_pkcs11h_session_findObjects)_pkcs11h_session_getSessionByTokenId*_pkcs11h_session_release@+_pkcs11h_session_resetT-_pkcs11h_session_getObjectById._pkcs11h_session_validate/__pkcs11h_session_touchN/_pkcs11h_session_login1_pkcs11h_session_logout 4VCK_RVPKCS11H_BOOL_CK_VERSION.CK_C_InitializeZCK_C_FinalizeCK_FLAGS_CK_INFO:CK_C_GetInfomCK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotList_CK_SLOT_INFOCK_C_GetSlotInfo _CK_TOKEN_INFOCK_C_GetTokenInfoCK_MECHANISM_TYPE1CK_C_GetMechanismListM_CK_MECHANISM_INFOCK_C_GetMechanismInfo CK_C_InitToken CK_SESSION_HANDLEX CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION CK_NOTIFY CK_C_OpenSessionI CK_C_CloseSessionw CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFO CK_C_GetSessionInfoV CK_C_GetOperationStates CK_OBJECT_HANDLE CK_C_SetOperationState CK_USER_TYPE CK_C_Login0 CK_C_LogoutB CK_ATTRIBUTE_TYPEZ _CK_ATTRIBUTE CK_C_CreateObject CK_C_CopyObjectA CK_C_DestroyObjectz CK_C_GetObjectSize CK_C_GetAttributeValue CK_C_SetAttributeValue7CK_C_FindObjectsInitwCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISM7CK_C_EncryptInitxCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinal&CK_C_DecryptInitgCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitPCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinal!CK_C_SignInit_CK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInit?CK_C_SignRecovervCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdate CK_C_VerifyFinalWCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate*CK_C_DecryptDigestUpdatesCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKeySCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey-CK_C_DeriveKeybCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction5CK_C_WaitForSlotEventQ_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_sb_pkcs11h_provider_tR CK_BBOOLp CK_ULONG_PTR CK_SLOT_ID_PTR CK_ULONG!pkcs11h_token_id_s9"pkcs11h_token_id_tR"time_t"CK_BYTE_PTR"size_t"pkcs11h_certificate_id_sg#pkcs11h_certificate_id_t#pkcs11h_certificate_id_list_s_"pkcs11h_certificate_id_list_t#uint16_t#uint8_t$$$uint32_t$;%upad64_tJ%%_pthread_mutex&_pkcs11h_mutex_t6&_pkcs11h_session_sL!_pkcs11h_session_tU'CK_ATTRIBUTE_PTR@-CK_TOKEN_INFOU.CK_OBJECT_CLASS.CK_ATTRIBUTE0CK_UTF8CHAR_PTR    , 0C0hPP` >[x@ A `15K cw{ & + 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 <  x   ''((Y)])b)f)k)o)))*#*]+$a+,, ,,,,?,C,H,L,Q,U,,,,,,,,,,,--y-'}-.(.!/+%/k/,o/000!0&0*0k0o0t0x0}0021*61;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" + *40/4@cL}rZsju {\ Lx  ĉ       /58 1315536526 0 0 100644 32444 ` ELF{4(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/131pkcs11h-token.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-token.c -W0,-xp.XAKgoyLO6XaO0AC.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLO6XaO0AC.;backend;raw;cd;DBG_GEN 5.3.0pkcs11h_token_freeTokenId?Utoken_id>unsigned longCK_RVcharlong!  ! 2 !C  pkcs11h_token_id_sd display# manufacturerID# model# serialNumber!# label2# Cpkcs11h_token_id_tpkcs11h_token_duplicateTokenIdXU@EtoVJfromW rvY @pkcs11h_token_sameTokenIdUab intPKCS11H_BOOL_pkcs11h_token_getTokenIdNUAinfop_token_id token_id rvunsigned charA c A t A A CK_FLAGS_CK_VERSION majorA# minorA#A _CK_TOKEN_INFO labelR# manufacturerIDc# modelt#@ 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_PTR@_pkcs11h_token_newTokenIdU11p_token_id rv token_id@pkcs11h_token_logout Utoken_id mutex_locked rvsession:(_pkcs11h_session_tA#_pkcs11h_provider_t !  void <& +<CK_C_Initializeh& WhCK_C_FinalizeA  A  _CK_INFOL# cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H 9 # ( 9 CK_C_GetInfo J Q l V [ l CK_C_GetFunctionListCK_SLOT_ID  A   CK_C_GetSlotListA@ ?A _CK_SLOT_INFOh slotDescription # manufacturerID #@ flags#` hardwareVersion#d firmwareVersion#f     CK_C_GetSlotInfo    CK_C_GetTokenInfoCK_MECHANISM_TYPE %    % CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize# ulMaxKeySize# flags# F      CK_C_GetMechanismInfo A     CK_C_InitTokenCK_SESSION_HANDLEL    1 L CK_C_InitPIN     d  CK_C_SetPINCK_NOTIFICATION   &  CK_NOTIFY    &   CK_C_OpenSession=  , = CK_C_CloseSessionk  Z k CK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFO slotID # state # flags# ulDeviceError#   CK_C_GetSessionInfoJ   /JCK_C_GetOperationStateCK_OBJECT_HANDLE  ll CK_C_SetOperationStateCK_USER_TYPE   CK_C_Login$ $CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE  type;# pValue&# ulValueLen# S l  CK_C_CreateObject l CK_C_CopyObject5 l 5CK_C_DestroyObjectn l SnCK_C_GetObjectSize l CK_C_GetAttributeValue l CK_C_SetAttributeValue+  +CK_C_FindObjectsInitk  KkCK_C_FindObjects CK_C_FindObjectsFinal_CK_MECHANISM   mechanism # pParameter&# ulParameterLen# +  l +CK_C_EncryptInitl    GlCK_C_Encrypt    CK_C_EncryptUpdate   CK_C_EncryptFinal  l CK_C_DecryptInit[    6[CK_C_Decrypt    sCK_C_DecryptUpdate   CK_C_DecryptFinal   CK_C_DigestInitD    DCK_C_Digestv   [vCK_C_DigestUpdate l CK_C_DigestKey   CK_C_DigestFinal  l CK_C_SignInitS    .SCK_C_Sign   hCK_C_SignUpdate   CK_C_SignFinal  l CK_C_SignRecoverInit3    3CK_C_SignRecoverj  l OjCK_C_VerifyInit    CK_C_Verify   CK_C_VerifyUpdate   CK_C_VerifyFinalK  l 0KCK_C_VerifyRecoverInit    mCK_C_VerifyRecover    CK_C_DigestEncryptUpdate    CK_C_DecryptDigestUpdateg    BgCK_C_SignEncryptUpdate    CK_C_DecryptVerifyUpdate   CK_C_GenerateKeyG   GCK_C_GenerateKeyPair  ll  gCK_C_WrapKey  l  CK_C_UnwrapKey!  l !CK_C_DeriveKeyV   ;VCK_C_SeedRandom   qCK_C_GenerateRandom CK_C_GetFunctionStatus CK_C_CancelFunction) & )CK_C_WaitForSlotEvent _CK_FUNCTION_LIST! version# C_InitializeA# C_Finalizem# C_GetInfo> # C_GetFunctionListq # C_GetSlotList # C_GetSlotInfo # C_GetTokenInfo # C_GetMechanismList* # C_GetMechanismInfo #$ C_InitToken #( C_InitPINQ #, C_SetPIN #0 C_OpenSession #4 C_CloseSessionB #8 C_CloseAllSessionsp #< C_GetSessionInfo#@ C_GetOperationStateO#D C_SetOperationState#H C_Login#L C_Logout)#P C_CreateObject#T C_CopyObject #X C_DestroyObject:#\ C_GetObjectSizes#` C_GetAttributeValue#d C_SetAttributeValue#h C_FindObjectsInit0#l C_FindObjectsp#p C_FindObjectsFinal#t C_EncryptInit0#x C_Encryptq#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInit# C_Decrypt`# C_DecryptUpdate# C_DecryptFinal# C_DigestInit # C_DigestI# C_DigestUpdate{# C_DigestKey# C_DigestFinal# C_SignInit# C_SignX# C_SignUpdate# C_SignFinal# C_SignRecoverInit# C_SignRecover8# C_VerifyInito# C_Verify# C_VerifyUpdate# C_VerifyFinal# C_VerifyRecoverInitP# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdate## C_SignEncryptUpdatel# C_DecryptVerifyUpdate# C_GenerateKey# C_GenerateKeyPairL# C_WrapKey# C_UnwrapKey# C_DeriveKey&# C_SeedRandom[# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction# C_WaitForSlotEvent.#Q CK_FUNCTION_LIST_PTRunsigned!_pkcs11h_thread_t _pkcs11h_provider_sTA# 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!# !time_t$pkcs11h_certificate_id_list_t# CK_BYTE_PTR!size_t pkcs11h_certificate_id_sV$ token_id# displayNamew## attrCKA_ID## attrCKA_ID_size## certificate_blob # certificate_blob_size## #V$pkcs11h_certificate_id_tpkcs11h_certificate_id_list_s$ nextS## certificate_id[$# z$unsigned short$uint16_t Auint8_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_timeF## cached_certsS##$ touch#( mutex'#, *'pkcs11h_token_loginP U))token_idM )readonlyN /)pinOmutex_lockedRslot Tpin_size4)UrvVsessionX %)*)CK_ULONGpkcs11h_token_ensureAccessg U**token_id*user_data  *mask_promptmutex_lockedsessionrvslot &!pkcs11h_token_freeTokenIdList U*+token_id_list_id* _  W  W x*+pkcs11h_token_id_list_t pkcs11h_token_id_list_s + next*# token_id# **pkcs11h_token_enumTokenIds)+U#-#-method'--p_token_id_list( mutex_locked+token_id_list*.current_provider/rv0WBBslots2-Kslotnum4)Lslot_index MT%ggentry*minfoG-nWccsessionjxxentry*found! +(- CK_SLOT_ID_PTRCK_TOKEN_INFO [- e-j-!_pkcs11h_util_fixupFixedString-`-o-t-:(_pkcs11h_session_logout--:(__pkcs11h_session_touch.-:(&! _pkcs11h_session_reset^.... .:(_pkcs11h_session_release.^. C. :(._pkcs11h_session_getSessionByTokenId...A#A . _pkcs11h_session_getSlotList8/....! =/B/_pkcs11h_logn/8/G/ &n/_pkcs11h_threading_mutexRelease/s/n/_pkcs11h_threading_mutexLock// / // !/ /0!_pkcs11h_mem_duplicateK0//0 0 K0 P0U0_pkcs11h_mem_free0Z0 0 00!_pkcs11h_mem_malloc000 0pkcs11h_getMessage000 0 1__assert411 1 41strncpy[-c1[-91! c1strlen#1h1 1 1strcmp11Z ? /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 :1xpkcs11h_token_freeTokenIdpkcs11h_token_duplicateTokenIdOpkcs11h_token_sameTokenId_pkcs11h_token_getTokenId_pkcs11h_token_newTokenId6pkcs11h_token_logout?(pkcs11h_token_loginC)pkcs11h_token_ensureAccess%*pkcs11h_token_freeTokenIdList!+pkcs11h_token_enumTokenIds 1CK_RVCpkcs11h_token_id_spkcs11h_token_id_tPKCS11H_BOOLCK_FLAGS_CK_VERSION_CK_TOKEN_INFOCK_TOKEN_INFO_PTRACK_C_InitializemCK_C_Finalize_CK_INFO> CK_C_GetInfoq CK_C_GetFunctionList CK_SLOT_ID CK_C_GetSlotList _CK_SLOT_INFO CK_C_GetSlotInfo CK_C_GetTokenInfo CK_MECHANISM_TYPE* CK_C_GetMechanismListF _CK_MECHANISM_INFO CK_C_GetMechanismInfo CK_C_InitToken CK_SESSION_HANDLEQ CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION CK_NOTIFY CK_C_OpenSessionB CK_C_CloseSessionp CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFOCK_C_GetSessionInfoOCK_C_GetOperationStatelCK_OBJECT_HANDLECK_C_SetOperationStateCK_USER_TYPECK_C_Login)CK_C_Logout;CK_ATTRIBUTE_TYPES_CK_ATTRIBUTECK_C_CreateObject CK_C_CopyObject:CK_C_DestroyObjectsCK_C_GetObjectSizeCK_C_GetAttributeValueCK_C_SetAttributeValue0CK_C_FindObjectsInitpCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISM0CK_C_EncryptInitqCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInit`CK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinal CK_C_DigestInitICK_C_Digest{CK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitXCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInit8CK_C_SignRecoveroCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalPCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate#CK_C_DecryptDigestUpdatelCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKeyLCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey&CK_C_DeriveKey[CK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction.CK_C_WaitForSlotEventJ_CK_FUNCTION_LIST!CK_FUNCTION_LIST_PTR!_pkcs11h_thread_t!_pkcs11h_provider_s_pkcs11h_provider_tF#time_t#CK_BYTE_PTR#size_t#pkcs11h_certificate_id_s[$pkcs11h_certificate_id_tz$pkcs11h_certificate_id_list_sS#pkcs11h_certificate_id_list_t$uint16_t$uint8_t$%%uint32_t%/&upad64_t>&&_pthread_mutex'_pkcs11h_mutex_t*'_pkcs11h_session_s_pkcs11h_session_t4)CK_ULONG*pkcs11h_token_id_list_s*pkcs11h_token_id_list_t2-CK_SLOT_ID_PTRG-CK_TOKEN_INFO    'F]p PvO:Wo o  p + F  <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+4kcq+$   t nrQ UY(&](d)*h)I*+M*******B+,F++++,, ,W,[,`,d,i,m,,,,,,,,,,,,,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+d4t 1@,R^ L\tZ]>j<_ {hc kH m r } s  {  {  /75 1315536526 0 0 100644 83092 ` ELF@4(.strtab.text.bss.data.rodata.rodata1.comment.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.XBKgoyLO6XaOUlC.__pkcs11h_certificate_updateCertificateIdDescription.unknownstrncpy.XBKgoyLO6XaOUlC.__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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13Qpkcs11h-certificate.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-certificate.c -W0,-xp.XAKgoyLO6XaOUlC.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLO6XaOUlC.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_certificate_isBetterCertificatetUcurrentpcurrent_sizeq newonernewone_sizesis_betterulBBBnotAfterCurrentnotAfterNewintPKCS11H_BOOLunsigned char unsignedsize_t longtime_t_pkcs11h_certificate_newCertificateIdaUvip_certificate_idrvunsigned longvCK_RVchar   !      !  pkcs11h_token_id_sdjdisplay#manufacturerID#model#serialNumber#label# jpkcs11h_token_id_t   CK_BYTE_PTRpkcs11h_certificate_id_s_token_ido#displayName#attrCKA_ID#attrCKA_ID_size#certificate_blob#certificate_blob_size#  _d__pkcs11h_certificate_loadCertificate0U_)certificatemutex_lockedcert_filter_classd)cert_filter)objectsobjects_found)rvi)o\\attrs)C _pkcs11h_certificate_id_tm(_pkcs11h_session_t $_pkcs11h_provider_t   !(  void (_CK_VERSIONemajor#minor#vv0 evCK_C_Initializev0 CK_C_Finalize   vCK_FLAGS   _CK_INFOLlcryptokiVersion5#manufacturerID#flags#$libraryDescription#(libraryVersion5#H vl qCK_C_GetInfo  v CK_C_GetFunctionListvCK_SLOT_ID  vv   CK_C_GetSlotList @8 ?  I _CK_SLOT_INFOh slotDescription' #manufacturerID8 #@flags#`hardwareVersion5#dfirmwareVersion5#f I v   CK_C_GetSlotInfo     %  6  G  X _CK_TOKEN_INFO label #manufacturerID # model% #@serialNumber6 #Pflags#`ulMaxSessionCountv#dulSessionCountv#hulMaxRwSessionCountv#lulRwSessionCountv#pulMaxPinLenv#tulMinPinLenv#xulTotalPublicMemoryv#|ulFreePublicMemoryv#ulTotalPrivateMemoryv#ulFreePrivateMemoryv#hardwareVersion5#firmwareVersion5#utcTimeG # X v$   $ CK_C_GetTokenInfovCK_MECHANISM_TYPE A vy Y  ^ y CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySizev#ulMaxKeySizev#flags# v A   CK_C_GetMechanismInfovN v . N CK_C_InitTokenvCK_SESSION_HANDLEv h v  CK_C_InitPINv h vv  CK_C_SetPINvCK_NOTIFICATIONv h  0  CK_NOTIFY h v_0%5 :_CK_C_OpenSessionvh {CK_C_CloseSessionv CK_C_CloseAllSessionsvCK_STATE_CK_SESSION_INFODslotID#state#flags#ulDeviceErrorv# v_h D I_CK_C_GetSessionInfovh  ~CK_C_GetOperationStatevCK_OBJECT_HANDLEvh v CK_C_SetOperationStatevCK_USER_TYPEvLh v ,LCK_C_Loginvsh bsCK_C_LogoutvCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE type#pValue0#ulValueLenv#  vh v CK_C_CreateObjectvSh v .SCK_C_CopyObjectvh  nCK_C_DestroyObjectvh  CK_C_GetObjectSizevh v CK_C_GetAttributeValuev=h v =CK_C_SetAttributeValuevzh v _zCK_C_FindObjectsInitvh v CK_C_FindObjectsvh CK_C_FindObjectsFinal_CK_MECHANISM ZmechanismA #pParameter0#ulParameterLenv# vzh Z _zCK_C_EncryptInitvh v CK_C_Encryptvh v CK_C_EncryptUpdatev1h  1CK_C_EncryptFinalvih Z NiCK_C_DecryptInitvh v CK_C_Decryptvh v CK_C_DecryptUpdatev h   CK_C_DecryptFinalvSh Z =SCK_C_DigestInitvh v nCK_C_Digestvh v CK_C_DigestUpdatevh  CK_C_DigestKeyv-h  -CK_C_DigestFinalvdh Z IdCK_C_SignInitvh v }CK_C_Signvh v CK_C_SignUpdatevh  CK_C_SignFinalv=h Z "=CK_C_SignRecoverInitvh v ]CK_C_SignRecovervh Z CK_C_VerifyInitvh vv CK_C_Verifyv+h v +CK_C_VerifyUpdatevch v HcCK_C_VerifyFinalvh Z CK_C_VerifyRecoverInitvh v CK_C_VerifyRecoverv$h v $CK_C_DigestEncryptUpdatevmh v HmCK_C_DecryptDigestUpdatevh v CK_C_SignEncryptUpdatevh v CK_C_DecryptVerifyUpdatevFh Zv !FCK_C_GenerateKeyvh Zvv bCK_C_GenerateKeyPairvh Z CK_C_WrapKeyv,h Zvv ,CK_C_UnwrapKeyvph Zv FpCK_C_DeriveKeyvh v CK_C_SeedRandomvh v CK_C_GenerateRandomv h  CK_C_GetFunctionStatusv>h ->CK_C_CancelFunctionvx0 ]xCK_C_WaitForSlotEvent_CK_FUNCTION_LIST"version5#C_Initialize{#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList #C_GetSlotInfo #C_GetTokenInfo) #C_GetMechanismList~ # C_GetMechanismInfo #$C_InitTokenS #(C_InitPIN #,C_SetPIN #0C_OpenSessiond#4C_CloseSession#8C_CloseAllSessions#<C_GetSessionInfod#@C_GetOperationState#DC_SetOperationState#HC_LoginQ#LC_Logoutx#PC_CreateObject#TC_CopyObjectX#XC_DestroyObject#\C_GetObjectSize#`C_GetAttributeValue#dC_SetAttributeValueB#hC_FindObjectsInit#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInit#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinal6#C_DecryptInitn#C_Decrypt#C_DecryptUpdate#C_DecryptFinal%#C_DigestInitX#C_Digest#C_DigestUpdate#C_DigestKey#C_DigestFinal2#C_SignIniti#C_Sign#C_SignUpdate#C_SignFinal #C_SignRecoverInitB#C_SignRecover#C_VerifyInit#C_Verify#C_VerifyUpdate0#C_VerifyFinalh#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate)#C_DecryptDigestUpdater#C_SignEncryptUpdate#C_DecryptVerifyUpdate#C_GenerateKeyK#C_GenerateKeyPair#C_WrapKey#C_UnwrapKey1#C_DeriveKeyu#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus#C_CancelFunctionC#C_WaitForSlotEvent}#CK_FUNCTION_LIST_PTR_pkcs11h_thread_t _pkcs11h_provider_sT $next#enabled#reference#manufacturerID#handle0#f"#should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread## .#$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  L&__pthread_ownerpid%#__pthread_lockword%#unsigned long longL&upad64_t  &__pthread_mutex_lock64%#__pthread_mutex_lock32&#__pthread_mutex_owner64b&#_pthread_mutex F'__pthread_mutex_flags+%#__pthread_mutex_lockq&#__pthread_mutex_datab&#&_pkcs11h_mutex_t _pkcs11h_session_sD m(next#reference_count#valid#provider# token_ido#session_handleh #allow_protected_auth_supported#pin_cache_period#pin_expire_time# cached_certs$#$touch#(mutexF'#, ]'pkcs11h_certificate_s8>)id#pin_cache_period#mask_private_mode#session# key_handle#operation_active#mutexF'#mask_prompt#0user_data0#4 r(>)pkcs11h_certificate_tC)vCK_OBJECT_CLASSCK_ATTRIBUTE z)) vCK_ULONG z) ) __pkcs11h_certificate_updateCertificateIdDescriptionUW*certificate_idseparator\*unknownf* W* a*__pkcs11h_certificate_getKeyAttributes U , ,certificatemutex_lockedrvop_succeedlogin_retry] i i key_attrs,   key_attrs_sign2,key_attrs_sign_recover2,key_attrs_decrypt2,key_attrs_unwrap2,CC) z)0#, CK_BBOOL #,_pkcs11h_certificate_validateSession^ U,,certificate]rvdC)_pkcs11h_certificate_resetSessionU--certificate-public_only -session_mutex_lockedmutex_lockedsession_validcert_handlervC)__pkcs11h_certificate_doPrivateOperationU//certificate y0op  ~0mech_type 0source0source_size0target0p_target_size mutex_lockedmech0wrap_attrs_true#,classd)keytype0wrap_attrs0wrap_value0$wrap_key'rv)login_retry*op_succeed+#4/(/(size)LCC)__pkcs11h_private_op_ey0__pkcs11h_private_op_sign__pkcs11h_private_op_sign_recover__pkcs11h_private_op_decrypt__pkcs11h_private_op_unwrap/A  00 0CK_MECHANISMvCK_KEY_TYPE z)$0  z) 0 pkcs11h_certificate_freeCertificateId$'UH1certificate_id#pkcs11h_certificate_duplicateCertificateIdG|U11toE1fromF rvHdpkcs11h_certificate_setCertificateIdCertificateBlobJUj2j2certificate_idy2blob ~2blob_sizerv o2t2pkcs11h_certificate_freeCertificateU2C)certificatepkcs11h_certificate_lockSessionfU>3>3certificatervC)pkcs11h_certificate_releaseSessionbU33certificatervC)pkcs11h_certificate_signe Uw4w4certificate|4mech_type 4source4source_size4target4p_target_sizervC)A  440pkcs11h_certificate_signRecoverZe"Um5m5certificateTr5mech_typeU 5sourceV5source_sizeW5targetX5p_target_sizeYrv[C)A  w5|50pkcs11h_certificate_decrypte$U_6_6certificated6mech_type s6sourcex6source_size}6target6p_target_sizervC)A  i6n60pkcs11h_certificate_unwrape&UP7P7certificateU7mech_type d7sourcei7source_sizen7targets7p_target_sizervC)A  Z7_70pkcs11h_certificate_signAny})UX8X8certificate]8mech_type l8sourceq8source_sizev8target{8p_target_sizervackedC)A  b8g80pkcs11h_certificate_decryptAny,Uc9c9certificateh9mech_type w9source|9source_size9target9p_target_sizervackedC)A  m9r90pkcs11h_certificate_create/U::certificate_id:user_data :mask_prompt:pin_cache_period:p_certificatehave_mutexmutex_lockedcertificateC)rv0 >):pkcs11h_certificate_getPromptMaskvI0U;;certificateuC)pkcs11h_certificate_setPromptMask0U;;certificate~;mask_prompt C)pkcs11h_certificate_getUserData0U0;;certificateC)pkcs11h_certificate_setUserData61UE<E<certificateJ<user_data C)0pkcs11h_certificate_getCertificateId2U<<certificate<p_certificate_id rvC)dpkcs11h_certificate_getCertificateBlob5U%>%>certificate*>certificate_blob />p_certificate_blob_sizemutex_lockedrvcertifiate_blob_size_max+44@44@44op_succeedlogin_retryC)0pkcs11h_certificate_ensureCertificateAccess3,8U3?3?certificate2mutex_locked_cert5mutex_locked_sess6validCert8rv9676767hMC)pkcs11h_certificate_ensureKeyAccess:U??certificatemutex_locked_certmutex_locked_sessrvvalid_keyC)_pkcs11h_certificate_enumSessionCertificates 4?UBBsession Buser_data  Bmask_prompt mutex_locked op_succeed login_retry rv o;>{;>{;>cert_filter_classd)) cert_filter B* objects. objects_found)/ i)1 ;-> <> <>certificate_idD new_element$E attrs1BG C 0 z) 1B  z)BB __pkcs11h_certificate_splitCertificateIdList BUDDcert_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$ headC infoC rv ?S@?B@?B@new_infoC S@ Ae@@e@@info2C AA%AA%AAnew_entry$! *BWB2BOB2BOBentryCU $ $DD Bpkcs11h_certificate_freeCertificateIdListp CUIEIEcert_id_listo _id$q lCCtCCtCCx$~ $pkcs11h_certificate_enumTokenCertificateIds fFUoFoFtoken_id tFmethod  yFuser_data ~Fmask_prompt Fp_cert_id_issuers_list Fp_cert_id_end_list mutex_locked session rv o0DDpkcs11h_certificate_enumCertificateIds LU0I0Imethod 5Iuser_data  :Imask_prompt ?Ip_cert_id_issuers_list DIp_cert_id_end_list mutex_locked cert_id_list$ current_provider current_session rv HEJH0JH0JslotsII- slotnum). slot_index/ lHIHIHIsessionE token_idoF info^IG EJPK\J;K\J;K\J;KJ;KJ;Kentry$ J;KJ&KJ&Knew_entry$ 0DDCK_SLOT_ID_PTRX CK_TOKEN_INFO jwI _pkcs11h_token_getTokenIdIrI|Im( _pkcs11h_session_logoutIIm(0 _pkcs11h_session_login:JIIIIIm( _pkcs11h_session_validatelJ:Jm( _pkcs11h_session_getObjectByIdJlJqJvJ{JJm( _pkcs11h_session_releaseJJj m(K _pkcs11h_session_getSessionByTokenIdHKJKm( MKRK aK  _pkcs11h_session_findObjectsKHKWK\KfKkK _pkcs11h_session_freeObjectAttributesKKKm( _pkcs11h_session_getObjectAttributesWLKLL L$aK _pkcs11h_session_getSlotListLWL\LaLkK LL!_pkcs11h_logLLL" &L _pkcs11h_threading_mutexFreeMLL _pkcs11h_threading_mutexReleaseMMML _pkcs11h_threading_mutexLockMMML _pkcs11h_threading_mutexInitMM( M MM0( MM _pkcs11h_mem_duplicateNMMMM( N "N'N _pkcs11h_mem_freeVN,N( VN [N`N _pkcs11h_mem_mallocNeNjNwIj pkcs11h_token_duplicateTokenIdNNN  pkcs11h_token_freeTokenIdONv O pkcs11h_getMessageOCOO COtm$Otm_sec#tm_min#tm_hour#tm_mday# tm_mon#tm_year#tm_wday#tm_yday#tm_isdst# MO localtimeOPHOMO P  asctimeP2P P 2P         " <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 Q_pkcs11h_certificate_isBetterCertificate _pkcs11h_certificate_newCertificateId7,_pkcs11h_certificate_validateSession,_pkcs11h_certificate_resetSession0pkcs11h_certificate_freeCertificateIdH1pkcs11h_certificate_duplicateCertificateId1pkcs11h_certificate_setCertificateIdCertificateBlob2pkcs11h_certificate_freeCertificate2pkcs11h_certificate_lockSessionC3pkcs11h_certificate_releaseSession3pkcs11h_certificate_sign4pkcs11h_certificate_signRecover5pkcs11h_certificate_decrypt6pkcs11h_certificate_unwrapx7pkcs11h_certificate_signAny8pkcs11h_certificate_decryptAny9pkcs11h_certificate_create:pkcs11h_certificate_getPromptMask;pkcs11h_certificate_setPromptMask;pkcs11h_certificate_getUserData;pkcs11h_certificate_setUserDataO<pkcs11h_certificate_getCertificateId<pkcs11h_certificate_getCertificateBlob4>pkcs11h_certificate_ensureCertificateAccess8?pkcs11h_certificate_ensureKeyAccess@_pkcs11h_certificate_enumSessionCertificatesDpkcs11h_certificate_freeCertificateIdListNEpkcs11h_certificate_enumTokenCertificateIdsFpkcs11h_certificate_enumCertificateIdsQn__pkcs11h_certificate_loadCertificate)__pkcs11h_certificate_updateCertificateIdDescriptionk*__pkcs11h_certificate_getKeyAttributes-__pkcs11h_certificate_doPrivateOperationBB__pkcs11h_certificate_splitCertificateIdList QPKCS11H_BOOLsize_ttime_tCK_RVpkcs11h_token_id_sopkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_spkcs11h_certificate_id_t5_CK_VERSION{CK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_SLOT_ID CK_C_GetSlotListI _CK_SLOT_INFO CK_C_GetSlotInfoX _CK_TOKEN_INFO) CK_C_GetTokenInfoA CK_MECHANISM_TYPE~ CK_C_GetMechanismList _CK_MECHANISM_INFO CK_C_GetMechanismInfoS CK_C_InitTokenh CK_SESSION_HANDLE CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION%CK_NOTIFYdCK_C_OpenSessionCK_C_CloseSessionCK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFOdCK_C_GetSessionInfoCK_C_GetOperationStateCK_OBJECT_HANDLECK_C_SetOperationStateCK_USER_TYPEQCK_C_LoginxCK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTECK_C_CreateObjectXCK_C_CopyObjectCK_C_DestroyObjectCK_C_GetObjectSizeCK_C_GetAttributeValueBCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISMCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdate6CK_C_EncryptFinalnCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdate%CK_C_DecryptFinalXCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKey2CK_C_DigestFinaliCK_C_SignInitCK_C_SignCK_C_SignUpdate CK_C_SignFinalBCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitCK_C_Verify0CK_C_VerifyUpdatehCK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover)CK_C_DigestEncryptUpdaterCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateKCK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKey1CK_C_UnwrapKeyuCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCCK_C_CancelFunction}CK_C_WaitForSlotEvent_CK_FUNCTION_LIST"CK_FUNCTION_LIST_PTR#_pkcs11h_thread_t.#_pkcs11h_provider_s_pkcs11h_provider_t$pkcs11h_certificate_id_list_s$pkcs11h_certificate_id_list_t%uint16_t%uint8_t+%%%uint32_t&b&upad64_tq&&_pthread_mutexF'_pkcs11h_mutex_t]'_pkcs11h_session_s_pkcs11h_session_tr(pkcs11h_certificate_sC)pkcs11h_certificate_td)CK_OBJECT_CLASSz)CK_ATTRIBUTE)CK_ULONG#,CK_BBOOL/__pkcs11h_private_op_e0CK_MECHANISM0CK_KEY_TYPEIICK_SLOT_ID_PTR^ICK_TOKEN_INFOMOtm(Q&*separator?*unknownp0}E=f@?     .8@fz/Uu|"* L qg0L:nP0p p$p Dp"`p${p& ) ,o0I5P0FW0Iw0F@1n2508;:thBCvpF !  %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 ~   !) 0z 0 1(0X(gw          % - 5 O W _ 22 =BGqv{!E/kp~3 .F(Ue }22INSp~%%5% A2PUZx229^&&&&8H `g22 AFKhv}%&  18W2fkp29+4F:T%\fm22 @!~22;(~2216;ejo$ 4  L S ~ 2    2    !!1!6!;!e!j!o!!!!$"4" L"S"~"2""""2""""##1#6#;#e#j#o####$$4$ L$S$~$2$$$$2$$$$%%1%6%;%e%j%o%%%%$&4& L&S&&2&&&&2&&&' ''9'>'C'm'r'w'''''''}(=(><)L) d)k))2))))2)))***I*N*S*}*******+++? ,@L,\, t,{,,2,,,,2,--5-:-?-\-z----D.62.EY.!/(4/(_/9/4/:/%// //000d0i0n00001 11N12]1b1g11211111122 2(2>2E2X26t22 22222223233 3M3R3W3333333 4!4.-5LM5(\5l5 }555255552666E6J6O6l6z666!6!70L7(c7s7 777.7(77 88V82e8j8o8828888888 99"9!\9!909(99 ::5:.t:(:: ::::; ;8;?;P;!; ; ; ;";#< "< *< 2< :< B< b<$<<P<& =&===4=%='== >>J>%b>r> >>>1>(>? ????????@@@3ATA6A4A%HB%fBQ|BQBB BBB2BBBC2&C+C0CPC^CeCC4C%CCC D2D D%DDD2VD[D`DDDDDDDDEE9E2DE!lEEEQEOF9F2F(,F45?56@67A78B89C9:F:B;GF;;H;<I <z<J~< =K=======f>Mj>?? ????b?Nf?7@O;@@@@@AAAAAAAAtBxBCCCCCCCCCCDD#D'D,D0D5D9D[D_DdDhDmDqDDQDEE"E&E+E/EEREFSFGGGGGG?HCHHHLHQHUHHHHHHHHHHHHHHHHHIIY`lv~ &08BJT^hp} &.8BLT^hpx$.6CJV^hrz  (0:BLV^fpx(2:DNV^fpz/"*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                  4 * 2 : B L T \ d l t |       6            & 0 8 E 7L X ` h p x               8 &.6>FNV^hr|;< $,4<FP_=frz>$,4<DNV^hpz? &08E@LX`hpxA "*2<DLV^fpz$.6CBJV^fnv~ &.8@HR\dlvC &.8@HRZdlv~ $,4<FNXbltFGHI !J(4<DLT\fpxK"*2<DLT\dnv (2<DQMXdlt|",4>HRZdnvN (2:BJT\fpx O&2:BJR\fpx (08BJR\dlv~&.8BJW^jrz (2:DNV`jt~    $ , 6 @ J R Z d l t ~             Q !!!!$!,!4!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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13)pkcs11h-slotevent.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-slotevent.c -W0,-xp.XAKgoyLP6XaOEwC.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaOEwC.;backend;raw;cd;DBG_GEN 5.3.0__pkcs11h_slotevent_checksumTHUpR:sS rUi-Vunsigned longunsigned charunsigned!size_t-__pkcs11h_slotevent_provideraUp`providerbslotcrv!d  @ @had_sleep)   last_checksumis_first_time)   current_checksumi!slots!slotnum! ` s sinfo!void!_pkcs11h_provider_tint"PKCS11H_BOOLcharlong <_ D <!p D _CK_VERSIONmajor#minor#CK_C_InitializeCK_C_Finalize   DCK_FLAGS  ' D_CK_INFOLcryptokiVersionp#manufacturerID#flags#$libraryDescription#(libraryVersionp#H'CK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDF!&+FCK_C_GetSlotList @s D?   D_CK_SLOT_INFOhslotDescriptionb#manufacturerIDs#@flags#`hardwareVersionp#dfirmwareVersionp#f" "CK_C_GetSlotInfo  O D  ` D q D  D  D_CK_TOKEN_INFOD label>#manufacturerIDO# model`#@serialNumberq#Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersionp#firmwareVersionp#utcTime#_ D I _ CK_C_GetTokenInfoCK_MECHANISM_TYPE|   &  CK_C_GetMechanismList_CK_MECHANISM_INFO ( ulMinKeySize#ulMaxKeySize#flags# H | ( - H CK_C_GetMechanismInfo i i n  CK_C_InitTokenCK_SESSION_HANDLE  i   CK_C_InitPIN  i i   CK_C_SetPINCK_NOTIFICATION`  / E ` CK_NOTIFY  e u z  CK_C_OpenSession    CK_C_CloseSession   CK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFO slotID#state #flags#ulDeviceError# *      CK_C_GetSessionInfo  i &  CK_C_GetOperationStateCK_OBJECT_HANDLE7  i    7 CK_C_SetOperationStateCK_USER_TYPE  Y i l  CK_C_Login    CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE 'type #pValue#ulValueLen#  Q ',1QCK_C_CreateObject  ',nCK_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 mechanism| #pParameter#ulParameterLen#H  CK_C_EncryptInit i i &CK_C_Encrypt8 i i &8CK_C_EncryptUpdateq i &VqCK_C_EncryptFinal  CK_C_DecryptInit i i &CK_C_Decrypt' i i &'CK_C_DecryptUpdate` i &E`CK_C_DecryptFinal }CK_C_DigestInit i i &CK_C_Digest i CK_C_DigestUpdate8  "8CK_C_DigestKeym i &RmCK_C_DigestFinal  CK_C_SignInit i i &CK_C_Sign i CK_C_SignUpdateH i &-HCK_C_SignFinal}  b}CK_C_SignRecoverInit i i &CK_C_SignRecover  CK_C_VerifyInit9 i i 9CK_C_Verifyk i PkCK_C_VerifyUpdate i CK_C_VerifyFinal  CK_C_VerifyRecoverInit! i i &!CK_C_VerifyRecoverd i i &?dCK_C_DigestEncryptUpdate i i &CK_C_DecryptDigestUpdate i i &CK_C_SignEncryptUpdate= i i &=CK_C_DecryptVerifyUpdate ',aCK_C_GenerateKey '',,CK_C_GenerateKeyPair    i & CK_C_WrapKeyl  i ',8lCK_C_UnwrapKey  ',CK_C_DeriveKey i CK_C_SeedRandom i CK_C_GenerateRandomK :KCK_C_GetFunctionStatus~ m~CK_C_CancelFunction!CK_C_WaitForSlotEvent_CK_FUNCTION_LIST; versionp#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotListK#C_GetSlotInfo'#C_GetTokenInfod #C_GetMechanismList # C_GetMechanismInfoM #$C_InitToken #(C_InitPIN #,C_SetPIN #0C_OpenSession #4C_CloseSession #8C_CloseAllSessions #<C_GetSessionInfo #@C_GetOperationState #DC_SetOperationState< #HC_Login #LC_Logout #PC_CreateObjectV#TC_CopyObject#XC_DestroyObject#\C_GetObjectSize#`C_GetAttributeValue@#dC_SetAttributeValue#hC_FindObjectsInit#lC_FindObjects#pC_FindObjectsFinal,#tC_EncryptInit#xC_Encrypt#|C_EncryptUpdate=#C_EncryptFinalv#C_DecryptInit#C_Decrypt#C_DecryptUpdate,#C_DecryptFinale#C_DigestInit#C_Digest#C_DigestUpdate #C_DigestKey=#C_DigestFinalr#C_SignInit#C_Sign#C_SignUpdate#C_SignFinalM#C_SignRecoverInit#C_SignRecover#C_VerifyInit#C_Verify>#C_VerifyUpdatep#C_VerifyFinal#C_VerifyRecoverInit#C_VerifyRecover&#C_DigestEncryptUpdatei#C_DecryptDigestUpdate#C_SignEncryptUpdate#C_DecryptVerifyUpdateB#C_GenerateKey#C_GenerateKeyPair#C_WrapKey%#C_UnwrapKeyq#C_DeriveKey#C_SeedRandom#C_GenerateRandom #C_GetFunctionStatusP#C_CancelFunction#C_WaitForSlotEvent#CK_FUNCTION_LIST_PTR!_pkcs11h_thread_t_pkcs11h_provider_sT!next#enabled)#referenceL#manufacturerID_#handle#f; #should_finalize)#allow_protected_auth)#cert_is_private)#mask_private_mode!#mask_decrypt_mode!#slot_event_method!#slot_poll_interval!#slotevent_threadV #n CK_RVCK_ULONG&CK_SLOT_ID_PTRCK_TOKEN_INFO__pkcs11h_slotevent_managerDU"pCfirst_time)E h  current_provider\ tcurrent_provider_pkcs11h_slotevent_initq U!#rv!_pkcs11h_slotevent_notify U!_pkcs11h_slotevent_terminate_forceF U!_pkcs11h_slotevent_terminate U!!&#!_pkcs11h_session_getSlotList!$####!<$$_pkcs11h_logE$$$!E$_pkcs11h_threading_threadJoin!$J$E$$$$_pkcs11h_threading_threadStart!$$$$uint8_t $% Dunsigned short%uint16_t~%__pthread_cond_flag$#__pthread_cond_type%#__pthread_cond_magic%#unsigned long long~%upad64_t_pthread_cond%__pthread_cond_flags!%#__pthread_cond_data%#%pthread_cond_t&__pthread_mutex_flag1%#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type%#__pthread_mutex_magic%# $& D&__pthread_mutex_pad&#!uint32_t('__pthread_ownerpid&#__pthread_lockword&#'__pthread_mutex_lock64&#__pthread_mutex_lock32&#__pthread_mutex_owner64%#_pthread_mutex'__pthread_mutex_flags&#__pthread_mutex_lock('#__pthread_mutex_data%#'pthread_mutex_t(4(cond%#mut'#(4(_pkcs11h_threading_condFree!m(9(4(!_pkcs11h_threading_condWait!(m(r(4(_pkcs11h_threading_condInit!((4(_pkcs11h_threading_condSignal!)(!_pkcs11h_threading_sleepB))<G)pkcs11h_getMessageL)w)B)w)|))_pkcs11h_mem_free!)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 )"_pkcs11h_slotevent_init#_pkcs11h_slotevent_notifyK#_pkcs11h_slotevent_terminate_force#_pkcs11h_slotevent_terminatep)__pkcs11h_slotevent_checksum?__pkcs11h_slotevent_provider "__pkcs11h_slotevent_manager)-size_t)PKCS11H_BOOLp_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS'_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDKCK_C_GetSlotList_CK_SLOT_INFO'CK_C_GetSlotInfo_CK_TOKEN_INFOd CK_C_GetTokenInfo| CK_MECHANISM_TYPE CK_C_GetMechanismList _CK_MECHANISM_INFOM CK_C_GetMechanismInfo CK_C_InitToken CK_SESSION_HANDLE CK_C_InitPIN CK_C_SetPIN/ CK_NOTIFICATIONe CK_NOTIFY CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions CK_STATE* _CK_SESSION_INFO CK_C_GetSessionInfo CK_C_GetOperationState CK_OBJECT_HANDLE< CK_C_SetOperationStateY CK_USER_TYPE CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTEVCK_C_CreateObjectCK_C_CopyObjectCK_C_DestroyObjectCK_C_GetObjectSize@CK_C_GetAttributeValueCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjects,CK_C_FindObjectsFinalH_CK_MECHANISMCK_C_EncryptInitCK_C_Encrypt=CK_C_EncryptUpdatevCK_C_EncryptFinalCK_C_DecryptInitCK_C_Decrypt,CK_C_DecryptUpdateeCK_C_DecryptFinalCK_C_DigestInitCK_C_Digest CK_C_DigestUpdate=CK_C_DigestKeyrCK_C_DigestFinalCK_C_SignInitCK_C_SignCK_C_SignUpdateMCK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInit>CK_C_VerifypCK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInit&CK_C_VerifyRecoveriCK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateBCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPair%CK_C_WrapKeyqCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandom CK_C_GenerateRandomPCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LIST; CK_FUNCTION_LIST_PTRV _pkcs11h_thread_tn _pkcs11h_provider_s_pkcs11h_provider_t!CK_RV!CK_ULONG!CK_SLOT_ID_PTR!CK_TOKEN_INFO$uint8_t%uint16_t!%%upad64_t%_pthread_cond%pthread_cond_t&&&uint32_t&(''_pthread_mutex'pthread_mutex_t(HP  %&'( ) * + , -AN^|5Qd x~ FP y  -@ GO H[ bj , ! (I0 7?Lo ( /7A HQVq  % ,?\f mu  ! (0\u    ! 7 G  X  _             $ #, W a  h p   !    "   |`d KOTX]a."2"k"o"t"x"}"""""";#!?#t#"x##$# '/9FMYais{ '/7AKS[cmu}#-7AKS]eow!+5=GQ[emu#-5?JT^fpx",4A!HT^fnv"$(2<D4B  bbb"d+4)@ANL IZJjKKt{KPTP V0 Z P\p  a  a - a  pkcs11h-core.o/ 1315536527 0 0 100644 53884 ` ELF04(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)dlfcn.h 1.45 05/08/08 SMI@(#)auxv.h 1.38 09/07/16 SMI@(#)auxv_386.h 1.5 09/06/11 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@pkcs11h-core.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-core.c -W0,-xp.XAKgoyLP6XaO08C.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaO08C.;backend;raw;cd;DBG_GEN 5.3.0intvPKCS11H_BOOLm_pkcs11h_provider_tcharlong! voidunsigned char _CK_VERSION, major# minor#unsigned long ,N =NCK_C_Initialize ,z izCK_C_Finalize ,CK_FLAGS  _CK_INFOLD cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H ,Z DIZCK_C_GetInfovr , w|CK_C_GetFunctionList,CK_SLOT_ID, ,   CK_C_GetSlotList@? ! _CK_SLOT_INFOh slotDescription# manufacturerID#@ flags#` hardwareVersion#d firmwareVersion#f! ,  CK_C_GetSlotInfo  0 _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#0 ,  CK_C_GetTokenInfo,CK_MECHANISM_TYPE ,Q  1 6QCK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySize,# ulMaxKeySize,# flags#r ,   CK_C_GetMechanismInfo ,+   ,  +CK_C_InitToken,CK_SESSION_HANDLE ,x E  ,]xCK_C_InitPIN , E  ,  ,CK_C_SetPIN,CK_NOTIFICATION , E  CK_NOTIFYE ,<       < CK_C_OpenSession ,i EX i CK_C_CloseSession ,   CK_C_CloseAllSessions,CK_STATE _CK_SESSION_INFO! slotID# state # flags# ulDeviceError,#  ,< E ! & < CK_C_GetSessionInfo ,v E  [ v CK_C_GetOperationState,CK_OBJECT_HANDLE , E  ,   CK_C_SetOperationState,CK_USER_TYPE ,) E  , ) CK_C_Login ,P E? P CK_C_Logout,CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  typeg # pValue# ulValueLen,#  , E ,   CK_C_CreateObject ,0 E ,  0 CK_C_CopyObject ,a E K a CK_C_DestroyObject , E   CK_C_GetObjectSize , E ,  CK_C_GetAttributeValue , E ,  CK_C_SetAttributeValue ,W E ,< W CK_C_FindObjectsInit , E , w  CK_C_FindObjects , E  CK_C_FindObjectsFinal _CK_MECHANISM 7 mechanism# pParameter# ulParameterLen,# ,W E 7 <WCK_C_EncryptInit , E  ,  sCK_C_Encrypt , E  ,  CK_C_EncryptUpdate , E  CK_C_EncryptFinal ,F E 7 +FCK_C_DecryptInit , E  ,  bCK_C_Decrypt , E  ,  CK_C_DecryptUpdate , E  CK_C_DecryptFinal ,0 E 70CK_C_DigestInit ,p E  ,  KpCK_C_Digest , E  ,CK_C_DigestUpdate , E CK_C_DigestKey ,  E   CK_C_DigestFinal ,A E 7 &ACK_C_SignInit , E  ,  ZCK_C_Sign , E  ,CK_C_SignUpdate , E  CK_C_SignFinal , E 7 CK_C_SignRecoverInit ,_ E  ,  :_CK_C_SignRecover , E 7 {CK_C_VerifyInit , E  ,  ,CK_C_Verify , E  ,CK_C_VerifyUpdate ,@ E  ,%@CK_C_VerifyFinal ,w E 7 \wCK_C_VerifyRecoverInit , E  ,  CK_C_VerifyRecover , E  ,  CK_C_DigestEncryptUpdate ,J E  ,  %JCK_C_DecryptDigestUpdate , E  ,  nCK_C_SignEncryptUpdate , E  ,  CK_C_DecryptVerifyUpdate ,# E 7 , #CK_C_GenerateKey ,s E 7 , , ?sCK_C_GenerateKeyPair , E 7  CK_C_WrapKey ,  E 7  , ,  CK_C_UnwrapKey ,M E 7 , #MCK_C_DeriveKey , E  ,gCK_C_SeedRandom , E  ,CK_C_GenerateRandom , ECK_C_GetFunctionStatus , E CK_C_CancelFunction ,U   :UCK_C_WaitForSlotEvent _CK_FUNCTION_LIST version# C_InitializeS# C_Finalize# C_GetInfo_# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismListV# C_GetMechanismInfo#$ C_InitToken0#( C_InitPIN}#, C_SetPIN#0 C_OpenSessionA #4 C_CloseSessionn #8 C_CloseAllSessions #< C_GetSessionInfoA #@ C_GetOperationState{ #D C_SetOperationState #H C_Login. #L C_LogoutU #P C_CreateObject #T C_CopyObject5 #X C_DestroyObjectf #\ C_GetObjectSize #` C_GetAttributeValue #d C_SetAttributeValue #h C_FindObjectsInit\ #l C_FindObjects #p C_FindObjectsFinal #t C_EncryptInit\#x C_Encrypt#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInitK# C_Decrypt# C_DecryptUpdate# C_DecryptFinal# C_DigestInit5# C_Digestu# C_DigestUpdate# C_DigestKey# C_DigestFinal# C_SignInitF# C_Sign# C_SignUpdate# C_SignFinal# C_SignRecoverInit# C_SignRecoverd# C_VerifyInit# C_Verify# C_VerifyUpdate # C_VerifyFinalE# C_VerifyRecoverInit|# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdateO# C_SignEncryptUpdate# C_DecryptVerifyUpdate# C_GenerateKey(# C_GenerateKeyPairx# C_WrapKey# C_UnwrapKey# C_DeriveKeyR# C_SeedRandom# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction # C_WaitForSlotEventZ#rCK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t _pkcs11h_provider_sTm 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#l%_pkcs11h_session_t! ! pkcs11h_token_id_sdZ display# manufacturerID# model# serialNumber# label#Z pkcs11h_token_id_ttime_t!pkcs11h_certificate_id_list_t CK_BYTE_PTRsize_t pkcs11h_certificate_id_s! token_id_ # displayName # attrCKA_ID # attrCKA_ID_size # certificate_blob# certificate_blob_size # !pkcs11h_certificate_id_t pkcs11h_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 K# __pthread_ownerpid"# __pthread_lockword"#unsigned long longK#upad64_t# __pthread_mutex_lock64"# __pthread_mutex_lock32 ## __pthread_mutex_owner64a## _pthread_mutexE$ __pthread_mutex_flags*"# __pthread_mutex_lockp## __pthread_mutex_dataa###_pkcs11h_mutex_t _pkcs11h_session_sDl% nextr# reference_countv# valid}# provider# token_id_ # session_handleE# allow_protected_auth_supported}# pin_cache_periodv# pin_expire_timex # cached_certs #$ touch}#( mutexE$#,\${%%va_list % q% v% % %%%pkcs11h_hook_log_t% %%%pkcs11h_hook_slotevent_t_  v<& & & & &&<&pkcs11h_hook_token_prompt_t_ w& v& c& h& m& r& |& &&&pkcs11h_hook_pin_prompt_t }' log_data# slotevent_data# token_prompt_data# pin_prompt_data# log%# slotevent%# token_promptA&# pin_prompt&#H' globalE$# sessionE$# cacheE$#0"' ( __pthread_cond_flag'# __pthread_cond_type "# __pthread_cond_magic "# _pthread_condo( __pthread_cond_flags'# __pthread_cond_dataa## (pthread_cond_t#pthread_mutex_t(( condo(# mut(#(_pkcs11h_cond_t8;) initialized}# should_terminate}# skip_event}# cond_event(# thread#4 _pkcs11h_data_s* initialized}# pin_cache_periodv# providers# sessionsr# hooks&# allow_protected_auth}#0 max_retries#4 mutexes}'#8 safefork}# slotevent(#;)*_pkcs11h_data_t_g_pkcs11h_data*_g_pkcs11h_loglevelpkcs11h_getMessageU***rv*,CK_RV*pkcs11h_getVersion Upkcs11h_getFeatures U7+featurespkcs11h_initialize U*+has_mutex_global}has_mutex_cache}has_mutex_session}rv*data*pkcs11h_terminatemU*, H H Hcurrent_provider d S Scurrentrcurrentpkcs11h_setLogLevel}U--flagspkcs11h_setForkModeU*H-H-safe}pkcs11h_getLogLevelUpkcs11h_setLogHook U*--hook -global_data  %pkcs11h_setSlotEventHookbU*1.1.hook6.global_data %pkcs11h_setPINPromptHook1AU*..hook/.global_data0 &pkcs11h_setTokenPromptHook@!U*..hook>/global_data? A&pkcs11h_setPINCachePeriodNU*X/X/pin_cache_periodMvpkcs11h_setMaxLoginRetriesZbU*//max_retriesYpkcs11h_setProtectedAuthenticationfU* 0 0allow_protected_authe}pkcs11h_addProviderxU*22referenceq2provider_locationr $2allow_protected_auths)2mask_private_modet.2slot_event_methodu32slot_poll_intervalv82cert_is_privatew mutex_locked}zmypid=2pprovidergflinitargs3pinitargs3info3rv*dlast2 222}}pid_t ,_2 I2N2_2CK_CREATEMUTEX ,2 y22CK_DESTROYMUTEX ,2 22CK_LOCKMUTEX ,2 22CK_UNLOCKMUTEX _CK_C_INITIALIZE_ARGS3 CreateMutexd2# DestroyMutex2# LockMutex2# UnlockMutex2# flags# pReserved#2CK_C_INITIALIZE_ARGS23CK_C_INITIALIZE_ARGS_PTRCK_INFOpkcs11h_removeProviderS,U*44referenceRcurrent_sessionrUhas_mutex_global}Vhas_mutex_cache}Whas_mutex_session}XproviderZrv*[44pkcs11h_forkFixupBU*pkcs11h_plugAndPlay U*5mypid=2{x x x currentslot_event_active}pkcs11h_logout*!U*,6current_sessionr+rv*, X! G! G!_rv*<_pkcs11h_logcV"U66flags`6formata ...bargs%d66__pkcs11h_hooks_default_loge"U(7(7global_data-7flags <7format%args2777__pkcs11h_hooks_default_token_prompt"U}77global_data7user_data 7token7retry_ __pkcs11h_hooks_default_pin_promptN#U}88global_data8user_data 8token8retry8pin8pin_max_ w& __pkcs11h_threading_atfork_prepare#U __pkcs11h_threading_atfork_parent#U __pkcs11h_threading_atfork_child#$U__pkcs11h_forkFixupp%U*99activate_sloteventmutex_locked}mypid=2$K%$K%$K%current }!_pkcs11h_slotevent_terminate*!_pkcs11h_slotevent_terminate_force*!_pkcs11h_slotevent_notify*!_pkcs11h_slotevent_init*l%"_pkcs11h_session_logout*: :!getpid=2!"pkcs11h_certificate_freeCertificateIdList*; :w&;";#_pkcs11h_util_fixupFixedStringi; ; '; ,;i;n;s;"_pkcs11h_mem_free*; x;;;;"_pkcs11h_mem_malloc*; ; ;$_pkcs1h_threading_mutexReleaseAll$_pkcs1h_threading_mutexLockAll#2<"_pkcs11h_threading_mutexFree*l< 7<2<"_pkcs11h_threading_mutexRelease*< l<2<"_pkcs11h_threading_mutexLock*< <2<"_pkcs11h_threading_mutexInit*= <#_pkcs11h_threading_sleep;= =%;=%C=%K="pthread_atforkv= >= F= N="pkcs11h_token_freeTokenId*= = v= ==&v=&v=&v=&v= pkcs11h_crypto_engine_s > global_data# initialize=# uninitialize=# certificate_get_expiration=# certificate_get_dn=# certificate_is_issuer=#=>>"pkcs11h_engine_setCrypto*> >"dlclosev ?  ?"dlsym2?  ?2?"dlopen[? 7? v[?e?#__assert? `? j? v?"strncpyw&? w& ? ?"strlen ? ???"strcmpv@ ? ?"memset;@  v ;@"memmovej@  @@ j@'getenvw& o@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 |     & - 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 '.? < ' ID N@2*_g_pkcs11h_dataQ*_g_pkcs11h_loglevelt*pkcs11h_getMessage*pkcs11h_getVersion*pkcs11h_getFeatures7+pkcs11h_initialize+pkcs11h_terminate,pkcs11h_setLogLevel -pkcs11h_setForkModeM-pkcs11h_getLogLevelw-pkcs11h_setLogHook-pkcs11h_setSlotEventHook;.pkcs11h_setPINPromptHook.pkcs11h_setTokenPromptHook/pkcs11h_setPINCachePeriod]/pkcs11h_setMaxLoginRetries/pkcs11h_setProtectedAuthentication0pkcs11h_addProvider3pkcs11h_removeProvider4pkcs11h_forkFixup5pkcs11h_plugAndPlay5pkcs11h_logout,6_pkcs11h_log@6__pkcs11h_hooks_default_logA7__pkcs11h_hooks_default_token_prompt7__pkcs11h_hooks_default_pin_prompt8__pkcs11h_threading_atfork_prepare8__pkcs11h_threading_atfork_parent9__pkcs11h_threading_atfork_childF9__pkcs11h_forkFixup @}PKCS11H_BOOL_CK_VERSIONSCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFO_CK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotList!_CK_SLOT_INFOCK_C_GetSlotInfo0_CK_TOKEN_INFOCK_C_GetTokenInfoCK_MECHANISM_TYPEVCK_C_GetMechanismListr_CK_MECHANISM_INFOCK_C_GetMechanismInfo0CK_C_InitTokenECK_SESSION_HANDLE}CK_C_InitPINCK_C_SetPINCK_NOTIFICATION CK_NOTIFYA CK_C_OpenSessionn CK_C_CloseSession CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFOA CK_C_GetSessionInfo{ CK_C_GetOperationState CK_OBJECT_HANDLE CK_C_SetOperationState CK_USER_TYPE. CK_C_LoginU CK_C_Logoutg CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObject5 CK_C_CopyObjectf CK_C_DestroyObject CK_C_GetObjectSize CK_C_GetAttributeValue CK_C_SetAttributeValue\ CK_C_FindObjectsInit CK_C_FindObjects CK_C_FindObjectsFinal _CK_MECHANISM\CK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinalKCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinal5CK_C_DigestInituCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalFCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitdCK_C_SignRecoverCK_C_VerifyInitCK_C_Verify CK_C_VerifyUpdateECK_C_VerifyFinal|CK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdateOCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate(CK_C_GenerateKeyxCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKeyRCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatus CK_C_CancelFunctionZCK_C_WaitForSlotEventv_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_s_pkcs11h_provider_tpkcs11h_token_id_s_ pkcs11h_token_id_tx time_t CK_BYTE_PTR 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 #a#upad64_tp##_pthread_mutexE$_pkcs11h_mutex_t\$_pkcs11h_session_sr_pkcs11h_session_t%va_list%pkcs11h_hook_log_t%pkcs11h_hook_slotevent_tA&pkcs11h_hook_token_prompt_t&pkcs11h_hook_pin_prompt_t&}'' (_pthread_condo(pthread_cond_t(pthread_mutex_t((_pkcs11h_cond_t(;)_pkcs11h_data_s*_pkcs11h_data_t*CK_RV=2pid_td2CK_CREATEMUTEX2CK_DESTROYMUTEX2CK_LOCKMUTEX2CK_UNLOCKMUTEX2_CK_C_INITIALIZE_ARGS3CK_C_INITIALIZE_ARGS3CK_C_INITIALIZE_ARGS_PTR3CK_INFO=pkcs11h_crypto_engine_s#S#1P#1 `"&p"nK"nn0$@        ! 0D]vPp(\?\vp  30Mhp9@Y0kPM .>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$1$1$'$6;@1`$rw|1$1$ 19>C1`$k$$1$1#1@$K$V4w$1$11 $+$W$fkp1$11$ $7$FKP1p$1$$1$"',1L$w$1$1$!9H$W\a1$11_dks$+:;;;c:<=>e?ot@)A1LSe$r$$B)5$@CODTg}18FMUcjr$}+$+$+$+)$GEpEDF;BW$sC$C$C$CW9_mt|$$$+$$ . $a 4f $q Cy       $ $ $!+!J2!CY!i!z!!!!!1!$!$!"$."$4"$"""1""""""1#4#;#T#$^#$k#${#K#$#$#$#L#$#$#L#$$>$9F$t${$$$$$$$$+$$$$%M%42%$=%CL%V%]%rM*$p***** ++P+T+, ,,!,&,*,/,3,Y,],b,f,k,o,,,,,,,,/,#-0'-g-2k--%--3-Z.'^..&.'/5+/~/6//7/,08001111113*34G45H5E5I5N5R5W5[55I55566 66?6C666k7o7 88889 9:9>9_9 c9999999OVbjrz "*2:BJRZbjrz "*2:BJRZbjrz %5<HU\hp}",4<DLT\dlv~ "*4<FPXelx",4<FPX`jt~ (2:G/NZg0nz2%   3 * 2 : D L T c 'j v ~      &        5     + 62 > F N V c 7j v ~    8              " * 2 < D N V ` h p x                    & 0 : D L V ^ h p x                   $ . 8 @ J R _ *f r z                ",4>HRZblt| &0:BJRZbjrzGH$,6@JRZdlv~I &0:BLT^hr| )0<DLT\fn{"*2AHT\dlv~  (2<FNV`jr4r p% , ,(,"(,T+|:k4?@@s|LmZ\Rj {   ( 0$ ( 4  H  ] (  pkcs11h-data.o/ 1315536527 0 0 100644 33612 ` ELF4(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/133pkcs11h-data.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-data.c -W0,-xp.XAKgoyLP6XaOkCD.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaOkCD.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_data_getObjectCgUov&session?&application@ &labelA&p_handleBclass&Dfilter&Eobjects Jobjects_found&KrvLC unsigned longoCK_RVq&_pkcs11h_session_tintPKCS11H_BOOL _pkcs11h_provider_tcharlong  !   void unsigned char _CK_VERSION[major#minor#ol [lCK_C_Initializeo CK_C_Finalize   oCK_FLAGS    _CK_INFOLbcryptokiVersion+#manufacturerID#flags#$libraryDescription#(libraryVersion+#H oxb gxCK_C_GetInfo  o CK_C_GetFunctionListoCK_SLOT_ID  oo CK_C_GetSlotList @. ?  ?  _CK_SLOT_INFOhslotDescription#manufacturerID.#@flags#`hardwareVersion+#dfirmwareVersion+#f ?o CK_C_GetSlotInfo       ,  =  N  _CK_TOKEN_INFOlabel#manufacturerID # model#@serialNumber,#Pflags#`ulMaxSessionCounto#dulSessionCounto#hulMaxRwSessionCounto#lulRwSessionCounto#pulMaxPinLeno#tulMinPinLeno#xulTotalPublicMemoryo#|ulFreePublicMemoryo#ulTotalPrivateMemoryo#ulFreePrivateMemoryo#hardwareVersion+#firmwareVersion+#utcTime=# No CK_C_GetTokenInfooCK_MECHANISM_TYPE 7ooO ToCK_C_GetMechanismList _CK_MECHANISM_INFO ulMinKeySizeo#ulMaxKeySizeo#flags# o 7  CK_C_GetMechanismInfo oI $ o$ ) I CK_C_InitTokenoCK_SESSION_HANDLEo c $ o {  CK_C_InitPINo c $ o$ o  CK_C_SetPINoCK_NOTIFICATIONo c    CK_NOTIFY c oZ  0 5 Z CK_C_OpenSessiono c v  CK_C_CloseSessiono   CK_C_CloseAllSessionsoCK_STATE _CK_SESSION_INFO? slotID#state #flags#ulDeviceErroro# oZ c ? D Z CK_C_GetSessionInfoo c $  y  CK_C_GetOperationStateoCK_OBJECT_HANDLEo c $ o   CK_C_SetOperationStateoCK_USER_TYPEoG c  $ o ' G CK_C_Loginon c ] n CK_C_LogoutoCK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  type #pValue#ulValueLeno# o c  o  CK_C_CreateObjectoN c   o ) N CK_C_CopyObjecto c  i  CK_C_DestroyObjecto c    CK_C_GetObjectSizeo c   o  CK_C_GetAttributeValueo8c   o 8CK_C_SetAttributeValueouc  o ZuCK_C_FindObjectsInitoc  o CK_C_FindObjectsoc CK_C_FindObjectsFinal _CK_MECHANISM Umechanism7#pParameter#ulParameterLeno# ouc U ZuCK_C_EncryptInitoc $ o$  CK_C_Encryptoc $ o$  CK_C_EncryptUpdateo,c $  ,CK_C_EncryptFinalodc U IdCK_C_DecryptInitoc $ o$  CK_C_Decryptoc $ o$  CK_C_DecryptUpdateoc $  CK_C_DecryptFinaloNc U 8NCK_C_DigestInitoc $ o$  iCK_C_Digestoc $ o CK_C_DigestUpdateoc  CK_C_DigestKeyo(c $  (CK_C_DigestFinalo_c U D_CK_C_SignInitoc $ o$  xCK_C_Signoc $ o CK_C_SignUpdateoc $  CK_C_SignFinalo8c U 8CK_C_SignRecoverInito}c $ o$  X}CK_C_SignRecoveroc U CK_C_VerifyInitoc $ o$ o CK_C_Verifyo&c $ o &CK_C_VerifyUpdateo^c $ o C^CK_C_VerifyFinaloc U zCK_C_VerifyRecoverInitoc $ o$  CK_C_VerifyRecoveroc $ o$  CK_C_DigestEncryptUpdateohc $ o$  ChCK_C_DecryptDigestUpdateoc $ o$  CK_C_SignEncryptUpdateoc $ o$  CK_C_DecryptVerifyUpdateoAc U o ACK_C_GenerateKeyoc U o o  ]CK_C_GenerateKeyPairoc U  $  CK_C_WrapKeyo'c U $ o o 'CK_C_UnwrapKeyokc U  o AkCK_C_DeriveKeyoc $ o CK_C_SeedRandomoc $ o CK_C_GenerateRandomoc CK_C_GetFunctionStatuso9c (9CK_C_CancelFunctionos XsCK_C_WaitForSlotEvent_CK_FUNCTION_LISTversion+#C_Initializeq#C_Finalize#C_GetInfo}# C_GetFunctionList#C_GetSlotList#C_GetSlotInfo#C_GetTokenInfo#C_GetMechanismListt# C_GetMechanismInfo #$C_InitTokenN #(C_InitPIN #,C_SetPIN #0C_OpenSession_ #4C_CloseSession #8C_CloseAllSessions #<C_GetSessionInfo_ #@C_GetOperationState #DC_SetOperationState #HC_LoginL #LC_Logouts #PC_CreateObject #TC_CopyObjectS #XC_DestroyObject #\C_GetObjectSize #`C_GetAttributeValue #dC_SetAttributeValue=#hC_FindObjectsInitz#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInitz#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinal1#C_DecryptIniti#C_Decrypt#C_DecryptUpdate#C_DecryptFinal #C_DigestInitS#C_Digest#C_DigestUpdate#C_DigestKey#C_DigestFinal-#C_SignInitd#C_Sign#C_SignUpdate#C_SignFinal#C_SignRecoverInit=#C_SignRecover#C_VerifyInit#C_Verify#C_VerifyUpdate+#C_VerifyFinalc#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate$#C_DecryptDigestUpdatem#C_SignEncryptUpdate#C_DecryptVerifyUpdate#C_GenerateKeyF#C_GenerateKeyPair#C_WrapKey#C_UnwrapKey,#C_DeriveKeyp#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus #C_CancelFunction>#C_WaitForSlotEventx#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# 5  !      !  pkcs11h_token_id_sd_!display #manufacturerID #model #serialNumber #label # _!pkcs11h_token_id_ttime_t"pkcs11h_certificate_id_list_t! $ CK_BYTE_PTRsize_t pkcs11h_certificate_id_s"token_idd!#displayName!#attrCKA_ID!#attrCKA_ID_size!#certificate_blob$ #certificate_blob_size!# !"pkcs11h_certificate_id_t pkcs11h_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  P$__pthread_ownerpid$#__pthread_lockword$#unsigned long longP$upad64_t  $__pthread_mutex_lock64##__pthread_mutex_lock32$#__pthread_mutex_owner64f$# _pthread_mutex J%__pthread_mutex_flags/##__pthread_mutex_locku$#__pthread_mutex_dataf$#$_pkcs11h_mutex_t _pkcs11h_session_sDq&next#reference_count#valid#provider# token_idd!#session_handlec #allow_protected_auth_supported#pin_cache_period#pin_expire_time}!# cached_certs!#$touch#(mutexJ%#, a% {&& && oCK_OBJECT_CLASS CK_ATTRIBUTE &$& oCK_ULONGpkcs11h_data_getUv(v(token_id{(is_public (application(label(user_data(mask_prompt(blob (p_blob_size$attrs(handle rvmutex_lockedsessionop_succeedlogin_retryblob_size_max!Cd! (( (($ ( & ( pkcs11h_data_put. U**token_id&*is_public' *application(*label)*user_data**mask_prompt+*blob, *blob_size-$class&/ck_true*0ck_false*1attrs*3handle <rv=mutex_locked@sessionBop_succeedClogin_retryDCd! ** **$ !CK_BBOOL &H* pkcs11h_data_delU(,(,token_id-,is_public <,applicationK,labelP,user_dataU,mask_promptmutex_lockedsessionop_succeedlogin_retryhandle rvd! 2,7, A,F,pkcs11h_data_freeDataIdList,6U,b-data_id_list+_id,-  x,:]-pkcs11h_data_id_list_t  pkcs11h_data_id_list_s ]-next,#application -#label -# -,pkcs11h_data_enumDataObjectsU7U//token_idP/is_publicQ /user_dataR/mask_promptS/p_data_id_listTmutex_lockedWsessionYdata_id_list,Zrv[op_succeed]login_retry^xxclass&filter/objects objects_found&i&8KKentry,attrs/C d! ]-/ & /  &/ q&_pkcs11h_session_login*0/////q&_pkcs11h_session_validate\0*0q&_pkcs11h_session_release0\0_! q&0_pkcs11h_session_getSessionByTokenId000q& 00 0 _pkcs11h_session_findObjectsE100000 _pkcs11h_session_freeObjectAttributes1E1J1q& _pkcs11h_session_getObjectAttributes11111 11_pkcs11h_log211 $2_pkcs11h_threading_mutexRelease[2#22_pkcs11h_threading_mutexLock2[2  2 22_pkcs11h_mem_free22  2 22_pkcs11h_mem_malloc322o 3pkcs11h_getMessage3C33 C3 M3__asserty3H3R3 y3strlen!3~3  3memmove3 = /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_delZ,pkcs11h_data_freeDataIdListg-pkcs11h_data_enumDataObjects*3v_pkcs11h_data_getObject 3CK_RVPKCS11H_BOOL+_CK_VERSIONqCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFO}CK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotList?_CK_SLOT_INFOCK_C_GetSlotInfoN_CK_TOKEN_INFOCK_C_GetTokenInfo7CK_MECHANISM_TYPEtCK_C_GetMechanismList_CK_MECHANISM_INFO CK_C_GetMechanismInfoN CK_C_InitTokenc CK_SESSION_HANDLE CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION CK_NOTIFY_ CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFO_ CK_C_GetSessionInfo CK_C_GetOperationState CK_OBJECT_HANDLE CK_C_SetOperationState CK_USER_TYPEL CK_C_Logins CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObjectS CK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSize CK_C_GetAttributeValue=CK_C_SetAttributeValuezCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISMzCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdate1CK_C_EncryptFinaliCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdate CK_C_DecryptFinalSCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKey-CK_C_DigestFinaldCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinal=CK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitCK_C_Verify+CK_C_VerifyUpdatecCK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover$CK_C_DigestEncryptUpdatemCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateFCK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKey,CK_C_UnwrapKeypCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandom CK_C_GetFunctionStatus>CK_C_CancelFunctionxCK_C_WaitForSlotEvent_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t5_pkcs11h_provider_s_pkcs11h_provider_t pkcs11h_token_id_sd!pkcs11h_token_id_t}!time_t!CK_BYTE_PTR!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$f$upad64_tu$$_pthread_mutexJ%_pkcs11h_mutex_ta%_pkcs11h_session_s_pkcs11h_session_t&CK_OBJECT_CLASS&CK_ATTRIBUTE&CK_ULONG*CK_BBOOL-pkcs11h_data_id_list_s,pkcs11h_data_id_list_tg     5Rdwp>d}1 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!#& % r&'($(+%+|,&,,,,,,,-'-......:/>/C/G/L/P/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 }      4T 7"du+4"3@V LLaZbj{c.{c Dm o v wh   *  ?  /119 1315536527 0 0 100644 14340 ` ELF 54(.strtab.text.bss.data.rodata.rodata1.comment.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'@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13 pkcs11h-serialization.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-serialization.c -W0,-xp.XAKgoyLP6XaOkUD.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaOkUD.;backend;raw;cd;DBG_GEN 5.3.0pkcs11h_token_serializeTokenIdEZUszBmaxC token_idDsourcesFrvGnHeIP==taP\\{twunsigned longCK_RVchar unsignedsize_tlong   !/  @  Q  !b  pkcs11h_token_id_sddisplay #manufacturerID#model/#serialNumber@#labelQ#bpkcs11h_token_id_t    intpkcs11h_token_deserializeTokenIdUKKp_token_idZsz p#s#targets_token_idp1_szervoolp2 P U { p pkcs11h_certificate_serializeCertificateId(UAAsz%max& Rcertificate_id'rv)saved_max*n+_max,  Y unsigned charYjCK_BYTE_PTRpkcs11h_certificate_id_s.token_id#displayNameF#attrCKA_IDo#attrCKA_ID_size#certificate_blobj#certificate_blob_size#.pkcs11h_certificate_id_t 3pkcs11h_certificate_deserializeCertificateIdoQ U!&p_certificate_idm5szn certificate_id3prvqpr_szs. ! + 0 !_pkcs11h_certificate_newCertificateIdx:bx }_pkcs11h_token_newTokenIdpkcs11h_token_freeTokenIdx    _pkcs11h_util_unescapeString9   > C  R W _pkcs11h_util_escapeString 9 H M \   Y _pkcs11h_util_binaryToHex     j   _pkcs11h_util_hexToBinaryH    H M R \ a _pkcs11h_mem_strdup W f void   _pkcs11h_mem_free    _pkcs11h_mem_malloc    " ' _pkcs11h_logS  , pkcs11h_certificate_freeCertificateId S   pkcs11h_getMessage     __assert     strrchr&   & strchrO +  O strncpy~ T  ~ 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_serializeTokenIdpkcs11h_token_deserializeTokenIdppkcs11h_certificate_serializeCertificateIdWpkcs11h_certificate_deserializeCertificateId CK_RVsize_tbpkcs11h_token_id_spkcs11h_token_id_toCK_BYTE_PTRpkcs11h_certificate_id_s3pkcs11h_certificate_id_t    Z-@`au ,QY  "J O T    'A H     #IS S X ]   ! 0 5 :e j o !"Cc#$%&  ' 8  ?   :>CGLPimrv{EI    %/7?IQYcmu}#+3;CKS]eow !)3;CMW_is} '19AIS[emu} )3;EMU_goy   45 pQ    " )+4 @!L'JZ)j){\*p ,X  $/  40   4   5 /144 1315536528 0 0 100644 27732 ` ELF i4(.strtab.text.bss.data.rodata.rodata1.comment.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@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13$pkcs11h-openssl.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-openssl.c -W0,-xp.XAKgoyLQ6XaOkjD.Xa;g;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLQ6XaOkjD.;backend;raw;cd;DBG_GEN 5.3.0__pkcs11h_openssl_get_openssl_sessionUnrsasessionnintPKCS11H_BOOLunsigned charlongasn1_string_stf length# type# data # flags# ASN1_INTEGERfchar ~asn1_object_st sn# ln# nid# length# data # flags#ASN1_OBJECT~ASN1_BOOLEANASN1_STRING"ASN1_ENUMERATED9ASN1_BIT_STRINGTASN1_OCTET_STRINGoASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRINGASN1_UTCTIME8ASN1_GENERALIZEDTIMEPASN1_VISIBLESTRINGpASN1_UTF8STRING ASN1_VALUE_stASN1_VALUE ^ ptr # boolean# asn1_string4# object# integery# enumeratedO# bit_stringj# octet_string# printablestring# t61string# ia5string# generalstring# bmpstring# universalstring3# utctimeK# generalizedtimek# visiblestring# utf8string# set4# sequence4# asn1_value#asn1_type_st type# value#^ASN1_TYPEX509_algor_st algorithm# parameter#X509_ALGOR  ~  ~   6 stack_st num# data# sorted# num_alloc# comp6#;STACKbuf_mem_st  length# data # max#BUF_MEMunsigned longX509_name_stT entries# modified# bytes# hash# X509_NAMETASN1_TIMEiX509_val_st notBeforey# notAftery#~X509_VAL ~ rsa_stX ) 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 blindingb #P mt_blindingb #TRSA) ]  3 8 b n z        rsa_meth_st8 name# rsa_pub_enc] # rsa_pub_deci # rsa_priv_encu # rsa_priv_dec # rsa_mod_exp # bn_mod_exp # init # finish # flags#$ app_data #( rsa_sign #, rsa_verify #0 rsa_keygen #4 RSA_METHOD  engine_st ENGINE bignum_st s d # top# dmax# neg# flags#$ BIGNUMs crypto_ex_data_st sk# dummy# CRYPTO_EX_DATAbn_mont_ctx_stH ( ri# RRs # Ns # Nis #, n0#@ flags#D BN_MONT_CTX( bn_blinding_st? BN_BLINDINGP  ~l v dsa_stD y pad# version# write_params# p # q # g # pub_key # priv_key # kinv # r #$ flags#( method_mont_p: #, references#0 ex_data #4 methC#< engine #@ DSAyDSA_SIG_st  r # s #DSA_SIG  { *6dsa_method0 - nameq # dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_exp# bn_mod_exp # init# finish%# flags# app_data #$ dsa_paramgen1#( dsa_keygen=#,BDSA_METHOD -> ~Mdh_stL i 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 #HWDHi rwdh_method$ w nameR# generate_key# compute_key# bn_mod_exp# init# finish# flags# app_data # generate_params# DH_METHOD wW ec_key_st  ptr # rsag # dsaH# dh# ec#evp_pkey_stg type# save_type# references# pkey# save_parameters# attributes#EVP_PKEYgX509_pubkey_st  algor# public_keyj# pkeyv#{X509_PUBKEYASN1_ENCODING_st  enc # len# modified#ASN1_ENCODINGx509_cinf_st4 versiony# serialNumbery# signature# issuerd# validity# subjectd# key# issuerUIDj# subjectUIDj# extensions#$ enc#(-X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_st(X509_POLICY_CACHE?mx509_cert_aux_st trust# reject# alias# keyid# other#mX509_CERT_AUXx509_st\% cert_info # sig_alg# signaturej# valid# references# name # ex_data # ex_pathlen# ex_pcpathlen#$ ex_flags#( ex_kusage#, ex_xkusage#0 ex_nscert#4 skid#8 akid##< policy_cacheW#@ sha1_hash\#D aux#XX509% F3 5 pkcs11h_certificate_sKcpkcs11h_certificate_t hpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_sPi reference_count# initialized# x5090# smart_rsa # orig_finishF#D certificateh#H cleanup_hook#Lipkcs11h_openssl_session_t ) __pkcs11h_openssl_get_pkcs11h_certificate!Uhrsasessionn ) __pkcs11h_openssl_decUflenfrom  to3 rsapaddingcertificatehsession_lockedmechrvtlen1 CK_MECHANISM_TYPECK_RVunsigned%size_t__pkcs11h_openssl_enc!U!flen&from  to3 rsapadding certificateh#session_locked$rv%tlen1& !__pkcs11h_openssl_finishlsU3 rsakopenssl_sessionnmpkcs11h_openssl_getX509KU0[[certificatecertificate_blob certificate_blob_size1x5090rvd2i1j h `e__pkcs11_openssl_d2i_tpkcs11h_openssl_createSessions Uncertificatedef'openssl_sessionnok h "pkcs11h_openssl_getCleanupHook Uopenssl_session npkcs11h_openssl_setCleanupHook' Uopenssl_session%cleanup& n pkcs11h_openssl_freeSession0g UBBopenssl_session/ npkcs11h_openssl_session_getRSAW U3 openssl_sessionVx5090Xrsa3 YpubkeyvZok[ npkcs11h_openssl_session_getX509@U0rropenssl_sessionx5090ok nvoid w _pkcs11h_mem_free w  %_pkcs11h_mem_malloc % ~  _pkcs11h_log3   c  = B % % V pkcs11h_certificate_decryptAny 3 8 G L Q [ c   %  V pkcs11h_certificate_signAny!      cpkcs11h_certificate_releaseSessionV!! cpkcs11h_certificate_lockSession!V! c  V pkcs11h_certificate_getCertificateBlob!!!! pkcs11h_certificate_s!pkcs11h_certificate_freeCertificate5"!  ~:"pkcs11h_getMessage?"j"5"X509_get_pubkeyv"j"0 ""d2i_X5090"""X509_free""X509_new0X509_dup0#0 #wRSA_get_ex_data"#O##RSA_set_ex_data|#g "# |#RSA_set_method#g # #RSA_get_default_method#RSA_free#g #RSA_size$#EVP_PKEY_free7$$EVP_PKEY_get1_RSAg \$$OpenSSL_add_all_digests ~y$ ~$__assert$~$$ w$memmove"#"#$% 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' ID I !I/ ' D  . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID I.?  : ;@ ' D .? < ' ID .? < ' D .? < ' ID .? < ' D .? < ' ID $pkcs11h_openssl_getX509pkcs11h_openssl_createSession,pkcs11h_openssl_getCleanupHookpkcs11h_openssl_setCleanupHookpkcs11h_openssl_freeSessionGpkcs11h_openssl_session_getRSApkcs11h_openssl_session_getX509$|__pkcs11h_openssl_get_openssl_session__pkcs11h_openssl_get_pkcs11h_certificate __pkcs11h_openssl_dec>__pkcs11h_openssl_enc+__pkcs11h_openssl_finish3$PKCS11H_BOOLasn1_string_stfASN1_INTEGERasn1_object_stASN1_OBJECTASN1_BOOLEAN"ASN1_STRING9ASN1_ENUMERATEDTASN1_BIT_STRINGoASN1_OCTET_STRINGASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRING8ASN1_UTCTIMEPASN1_GENERALIZEDTIMEpASN1_VISIBLESTRINGASN1_UTF8STRINGASN1_VALUE^asn1_type_stASN1_TYPEX509_algor_stX509_ALGOR;stack_stSTACKbuf_mem_stBUF_MEMX509_name_stTX509_NAMEiASN1_TIME~X509_val_stX509_VAL) RSA rsa_meth_st RSA_METHOD ENGINE$ bignum_sts BIGNUM crypto_ex_data_st CRYPTO_EX_DATA bn_mont_ctx_st( BN_MONT_CTXP BN_BLINDINGrsa_styDSADSA_SIG_stDSA_SIGBdsa_method-DSA_METHOD dsa_stiDHdh_methodwDH_METHODWdh_stevp_pkey_stgEVP_PKEY{X509_pubkey_stX509_PUBKEYASN1_ENCODING_stASN1_ENCODING-x509_cinf_stX509_CINF?X509_POLICY_CACHEmx509_cert_aux_stX509_CERT_AUXx509_st%X509hpkcs11h_certificate_tpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_snpkcs11h_openssl_session_tCK_MECHANISM_TYPECK_RV1size_tj__pkcs11_openssl_d2i_t0f &#<=FGRSbcde f g h i js">N GjP#&.@ I_ F~p @)BZ_dpuz%l 6EUfm#MRWt.>OVv  G!OY`# ?$a%$&' 29eov~)%*+ D ,L Z a       4 9 > l q v     '- /E ,M W ^          4 B I W 1j t {  2       3   , 4>  5 6 '   "',LZa}"7 ''.x$(Y]IM"(Q-U.!l0p1elx "*4<DLT\dlt| )0<DLV^fnx +2>FPX`hrz""*4<FNV^fpz( $,4<DLT\dlv~-.! $,4<DNV^fnv0"*4<DNV^hpx  1 $ , 4 < F P X ` j r z         4 @"+4$@D LNNZPjQ{Q7 W2 Z< `L da \ h p h  i 07070100024071000081ed0000000000000000000000014e697e910005136c000000b500010002ffffffffffffffff0000002d00000000root/usr/local/lib/libpkcs11-helper.so.1.0.0ELF4 4 (#" ll8 !"$%)*+-/01589:<=ACEFHKNQRSUVWXZ\]^_`bcdfghijmoqrsuvwxz{|}  #&'(,.23467;>?@BDGIJLMOPTY[aeklnpty~  0E 7. V0  }8{ E Cl %  @E 9GMa i/ x`s    Dz .6P4  a  t  . P  08?@ ZjzE   ` '>C h}  y1 ? ) l Ko E BT $+4 Zp. p@ :O p)?  "g F`6 s  P1 @2 Y p$ -BX(a t   @    % ; G ` s 0 O l a v6  `  B Q Y i {   pi  PDi w Iy  % P ? Ђ Z  n lw  @F  pkcs11h_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_getMessagepkcs11h_forkFixupX509_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_unlockgettimeofdaypkcs11h_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_mallocpkcs11h_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_getRSAusleeppthread_cond_initlibpkcs11-helper.so.1libpthread.so.1SUNW_1.2libdl.so.1SUNW_0.7libc.so.1SUNW_1.1libcrypto.so.0.9.8libnsl.so.1libgnutls.so.26libtasn1.so.3libz.solibgcrypt.so.11libgpg-error.so.0libintl.so.8libiconv.so.2libsocket.so.1/usr/local/lib  '=    (=   '= (  Ȗ̖Ԗؖ 04@D̗Зԗؗܗ  $(,048<@DHLPTX\dhptx|ĘȘ̘ИԘؘܘ  $(048<@DHLPTX\`dlptx|ęș̙Йԙؙܙ  $(,048<@DLPTX\`dhlptĚȚ̚КԚؚܚ  $(,048<@DHLPTX\`dhlptx|ěț̛Лԛ؛ܛ  $(,048<@DHLPTX\`dhlptx|ĜȜ̜МԜ؜ $(,048<@HLPT\dltx|ĝȝ̝Нԝ؝ܝ  $(048<@DHLPTX\`hlp|Ȟ̞Оܞ  (,08<@HTXdh!R7  $(,0ЖNܖ=`:o@m( G$(_,$8.<0H-LhPTX\`dhIl}pCtlx |a6D9iPFJ]uTUė~ȗEps`?l{1,hx)HOx |K/;WܜeZn w^DMX*`h"p,jdt xb,qz 2ĞԞ؞%r$[4D>LgPV\S` 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 P\jj@PE PjEPEE]ÐU]ZU`EEu(juPR E EEt%Eu,jwPR E EE@E t E @EtEEPEP@EEt/E t E UPUEPEPBP3 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}jEPjPrjEPjPW+GUƉBEtjEPdEE@EE]u}ÐU ]ZUcZEE u LPhPR E EEutPh PR E EEwxPh PR E EUBEEuEE EEPEPEP u$jEP)ЋEPEPR& EtjEPEE@EE]ÐU,]؉uZUܸXEEEEE u Ph:PR E EEuPh;PRM E EEEtEEuE EEPEPEP uEEEPEPEPe uhjEPEEuJjEPjEPPVuEPEPuEEtjEPEEtjEPEEtjEPEEEE]؋uÐU ]ZUW2t E EE]ÐU ]ZUVEE]ÐU,]ZUظsVEjjwEE uLPhPR E EEuTPhPR E EE@jEP,t EfE EEEjEPEP t>jEPEjEPEE;E|E;E EUPEtjEPEE@EE]ÐU(]ZUܸUEE u LPhPR E EEutPhPRu E EEwxPhPR= E EUBjEPt ETE EEEjEPEPq t-EEEPEPEP t UBEtjEPWEE@EE]ÐU,]ZUظsSEEEEE uPh7PR E EEuPh8PR E EjEP.tEjEP t 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@PSE@E@EEuɋjPjh@jP EEEtjPE]U]ZUKEEjP#tHE@EEt,Ej@PWE@E@EEuԋEtjPE]ÐU]ZUKEEjPu)jEPuEjPt EEEEE]ÐU]ZUsJEEjP"u)jEPouEjP t EEEEE]ÐU$]uZUIEE u-EPEPt EjEPBЃt EqE +U‰EU ȍ++E +ƉEUEPBPEPo 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@PRT E EEEEEPE PEPO UBEHEE;Er2E@ u&UBEHEE;Er E@ tڋ]ÐU0]ԉuZUظEڋBEBEBEEE ujWPRe E EEujXPR0 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ڋEuhPRw E EEuhPR= E EEU E;s EEE;Esw0EE@%REEEEMUЈJ0EE@ȃREE؋EEM؋UȈDJE@EE;ErMUJEE]ÐU$]ZUcBEE EEEEE uhPR E EEu4hPR E EE@#E@\t7E@PEP`uEP$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 EEuPHjJPRd 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;EEudHhPRm E EEuhHhPR5 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|HhPRr DžL DžLEuHhPR6 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`PPc EtjEP%E@EE\EDž@E@ 0Ujj\Pjd`PBPApЃTTu\Et$E@ 0Ej@PBtЃEEUPEUPEEDžTEtjEPDEET@r5jTPЋEj@PRTPVjTEE84ÐU,]؉uZUܸ3EEEEEu HhPRh E EE uHhPR- 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踐0EEEudHhPR6 E EE@}HhPR E ET@rEPRjɬ Ej,PXEEt&EE@~ E@UHBEEtEj,PlET@r(jEP+jjPEPVj/EEE]uÐUZ0/EEEEudHhKPR E EEuHhMPRe 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ԃtjEP~E@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( jEP.jjPEPVj2EEE]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<4jBPR\ E ET@r@EPRj) jEPT@rDPjEE]ÐU$]uZUE@u04j[PR芶 E E@@u84j\PRK E EEuH4j]PR E EE uL4j^PRܵ E ET@rPjjE PEPRj衚E@jjhdE PjEPlEEtET@r/TjEP.ЋEj@PREPVj+EEE]uÐU]ZUڋEuX4hPRǴ E EE u\4hPR荴 E EUE PP荷uiUE !P!PmuIUE 2P2PMu)UE CPCP-u EEEEE]ÐU ]uZUEEud4hPR} E EE uh4hPRE 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 84hPR< E EEuh4hPR E ET@rxEPRjѕ E@hdEP趶EEtEUPEEEtjEPzET@r/|jEP9Ћ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@u04hPRy E E@@u 84hPR8 E EEu<4hPR E ET@rjEPE PEPRjÏEPEPEEtZEj,P2EEt9EjjEPEPE PEPPEEtEEtEj,P3EEtjEPET@r(jEPլjjPEPVjَEEE]؋uÐU]ZUڋEE@u04h PRk E E@@u 84h PR( E ET@rEPRj EtKEEE@EE@tEj@PګE@jEP誯EuT@rPj胍EE]ÐU($ Z,aEEE@u04h2PR E E@@u 84h3PR货 E EE u4h4PRy E ET@rjjE PEPRjAE @@j8PEEtE@@EEEE@uajjEPEPREPEEtDT@r0ujEPjjPEPPWjiEE;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@PajEP;E܋@E܋E܃E UPEEEtjEPAEEt!@j8PӼEET@r,jEP菦jE PREPVj菈EEE($ U$]u}ZU] EEujxPR E ET@r!EPEPE PEPRjчE tEuEjjEPE PEPBPA ЃuEjjEPEPEPBPA ЃuET@rKjEPjPvjEPƢjP[jjPVWjE;EET@r.Et EEEPRj视 EEE]u}U]uZU EEuhPR= 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}̋ujEP/PEPPEPEPj'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}ڋEuhPR1 E ET@rEPRj EtJMUEjhPP PFPGЃu UBEjP谛uUh@PBP譞 }EjPsPFPGP諞 }uEjPDPFPGP| UT@rEPRj EE]u}ÐUd]uZUEEEEEu hPRX 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(jEPۚjjPEPVj|jjEP EEEtEEEtEjP菰ET@r( jEPNjjPEPVjR|EEE]uÐU]uZU0EEuhfPRݖ E ET@r$EPRj{ Ej@ P EEtE@u EET@r((jEP:jjPEPVj>{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(0jEP;jjPEPVj?xEEE]؋uÐU]|ZUE4BEBEBEEEEEE8BEBEBEċB EȋBE̋BEЋBEԋBE؋B E܍EEEE̍EE؋<BEBEBEEEEEEE@u@h-PR E E@@u Dh.PRđ E EEuh/PR艑 E EEuHh0PRQ 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(\jEPijjPEPVjmqEjjEP6 EEtEEtEjP"ET@r/`jEPЋE j@PREPVjpEEE]|J~:zU]ZU츣ڋ@u@h%PRQ E E@@u Dh&PR E EEuh'PRՊ E ET@rdEPRjo EtEjP脑E tEj PcE@tEj@P_E@jEP/T@rhPjoEE]ÐU$]uZUE@u@hJPR藉 E E@@u DhKPRT E EEulhLPR E EE uphMPR E ET@rtjjE PEPRjmE@jjhE PjEPtEEUE jjhd@PjBPDEEEpEHU E jjPPPPEEuEEpEHU E jjP PP P趏EEt ET@r/xjEPvЋEj@PREPVjslEEE]uÐU$]uZUPE@u@hPR E E@@u DhPR贆 E EEuhPRy E EE u|hPRA E ET@rEPRjk E t Ej PEEt[MUjjEPE PP P諍EEt&jEPEEtET@r(jEPNjjPEPVjRjEEE]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@hPRj E E@@u DhPR( E EEuhPR E EE@ j,PlEEtEEEE]ÐU]ZU踣E@u@hPRJ E E@@u DhPR E EEuhPŔ E EE@ t"E@ j,P衚EEtEEEE]ÐU,]؉uZUܸpE@u@hPR E E@@u Dh PRԀ E EEuh!PR虀 E EEuHh"PRa E EEuLh$PR) E ET@rGEt E@EEjjEPEPEPEPE PEPRjd(Eu E@EPEPEPEPE PjEPsEEt ET@r/jEPBЋEj@PREPVj?dEEE]؋uÐU,]؉uZUܸ E@u@h]PR~ E E@@u Dh^PR~ E EEuh_PRI~ 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@hPRw| E E@@u DhPR4| 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 EEuHhPRqy E EEuLhPR9y E ET@rGEt E@EEjjEPEPEPEPE PEPRj](Eu E@EPEPEPEPE PjEPEEt ET@r/jEPR{ЋEj@PREPVjO]EEE]؋uÐU0]ԉuZUظ0EE@u @hPRw E E@@u DhPRw E EEuhPRQw E EEuHhPRw E EEuLhPRv E ET@rGEt E@EEjjEPEPEPEPE PEPRj[(E@u=T@rPjU[jEPEEtEuxE@tj(E_EPEPKEPEPEPEPE PEP_yc}tTtǐctht븋EutE@tf$E[EPEPG]EPEPEPEPE PEPxc}tTtːctht뼋Eu E ET@r/jEPwЋEj@PREPVjYEEE]ԋuÐU0]ԉuZUظEE@u @hPR`t E E@@u DhPRt E EEuhPRs E EEuHhPRs E EEuLhPRqs 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/jEPvtЋEj@PREPVjsVEEE]ԋuÐU,]؉uZUܸPEEEE@u@hPRp E E@@u DhPRp E EEuhPRep E ET@r%EPEPEPE PEPRj%UE@j8EP vEEtPEU P4EUP0E@EUPEjPUEEtEEPEPdsEEtEPE PBP袣EEtE@ j,PEEtEE@teE@ @uUE@ RPFE@ U@;B~2EP E@ R +PEHE@ щP UE@ RPEUPEEEtnEEt ET@r(jEP&mjjPEPVj*OEEE]uÐU4]ЉuZUԸEEE@u@hPRi E E@@u DhPRhi E EEuhPR-i E EEuhPRh E ET@r9E t E@EEjEPE PEPRjME t E@EE@EjPEEtEE@ EEE܃unjEPEEtEEE܃u2E؃uEjjEP EEtE܃tE@ u E]E@UBE t:E@;Ev EP'EPE@P PE P{g EEtEjP3ET@r(jEPijjPEPVjKEEE]ЋuÐU0]ԉuZUظEEEE@u@h;PRrf E E@@u Dh<PR0f E EEuh=PRe E ET@rEPRjJ EjPT~EEt+EEEE@ j,P~EEtPEuEHEPjEPPPjF P蟣EEt EEtE@ j,P}EEu6T@r(jEPgjjPEPVjIEu'jjEP EEtEEtEEtEjP`}ET@r(jEPgjjPEPVj#IEEE]ԋuÐU,]؉uZUܸEEEE@u@hPRc E E@@u DhPRPc E EEuhPRc E ET@rEPRjG EjPt{EEt+EEE@ j,P<{EEtOEuEHEPEjPPPjF PĠEEtEEtE@ j,P${EEu@T@r(jEPdjjPEPVjFE@Eu%jjEP EEtEEtEEtEjPzET@r( jEP?djjPEPVjCFEEE]؋uÐUt]u}ZUEEEEEuh PR` E ET@rjEPE PEPRj{EEj,P yEEt{EEeEBE؋BE܋BEEEEEjEPsEEtxjEPEPjEPEP藏EEtLEE;E+EEBEBEBEB EBEBEM̋UjjjEPPEP蜋EEjEP诽EEE@PEP%bEEMȋUjjEPEPPPfEEueMȋUjjEPEPP PfEEu2jEPEEujEPdEEt4EUċ@$BEċUȉPEEUĉP$EEEȃtjEPaEEătjEP eEjEP舌EtTT@rFEE@ E}̋ujEP`PEPPEPEPjBE@E̋E;EEEEԃtjEPedEurEu]T@r( jEP`jjPEPVjBEjPE PjjEP蒟EEEtEEtEj,PuET@r($jEP_jjPEPVjAEEE]u}ÐU<]̉uȉ}ZUظmEEEEEEEu(h PR[ E ET@r,jEPE PEPRj@E t E @E@EEEtYEj EP|aEEtE܋UPEU܋@BE܉EEE@EEuEEEEEE܋E܃E@E;Et\EЋEpEHE܋PE܋@jP PP PGPEЋ@ЃЋEPE܋@E܋E܃t E@tE@EECEEEEEjEP;`EEu!U܋E@PBP]EEt8E܃t*E܋@tEj@Pc]jEP`E@E@tE܋UPE܉EEE܋UPE܉EEE@EE,E tE UPEEUPEEEt%EE܋E@EjEP(`EuۋEtjEP\EtjEP\T@r(4jEP[jjPEPVj=EEE]̋uȋ}ÐU]ZU踣ڋEE@u@hs PRKX E E@@u Dht PRX E ET@r8EPRj< EtKEEE@EE@tEj@P[E@jEP^EuT@r<Pjc<EE]ÐU,]؉uZUܸPEEE@u@h PRV E E@@u Dh PRV E EEu@h PRmV E EEu(h PR5V E ET@r-DjjEPEPEPEPE PEPRj:(Et E@E@@jhPZnEEtEEPEPEEtsE uEj@$PBYE@$E@$uEPEPEP! EUEPEPB$P EEt EEtjEPjEt@jhPmET@r(HjEPWjjPEPVj9EEE]؋uÐU Z$qEEE@u@h PRT E E@@u Dh PRS E EEu(h PRS E ET@r!LEPEPEPEPRjM8Et E@E@@jhPkEEtE@@ EEt>E@(EuEj@$PVE@$E@EEu‹@@EEIEE@ujjEPEPREP&|EEtEE;EjEEE0MЋU؍(PPFЃEEu9EP(PEEuEPEPEEtBE@(E̋@$u#EPE PEPn EEt EEt]T@rOPE}ЋujEP!TPEPPPPj6ẼtjEPmEEȃtjEPSEE@EЋE;EEEt>T@r0TujEPzSjPEPPWjy5E؃tjEPcWEE@EE@@ EEEt#Et EE@(EE@$E؋E؃EjEPUEEu!UԋE؋@PBPwSEEt)EԃtE@jEP\SEkEԋ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]=:hEPG<EEt@ujj:EEtkj@PBЃu-T@r(PjEEj8P>MEEtEEjhPMEEtEEjPPLEEtE,04PRQ/9 t EwE@4E@0E@E@UPE<jP8DjP8LjP8EEtuEtEj8PMEEtEjhPMEEtEjPPMEjEP,;ET@r(TjEP6jjPEPVjEEE]uÐU]ZUӛڋT@rXPj@ET@r\Pj[@@EEt"EjP{7E@EEuދ@jhPK@jPPK@j8P}KT@rdPj@@ @@ E􋃠@P @RP Ej,PKE@E@tT@rhPj:E@tEj@P65E@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|hPRQ. E E@@u |hPR. E EEu|hPR- E E@UP @U PEE]ÐU]ZU츓ڋ@ux|hPRA- E E@@u |hPR- E EEu|hPR, E E@UP$@U PEE]ÐU]ZU츃ڋ@ux|h2PR1, 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[PRA) E E@@u |h\PR) E E@UP4EE]ÐU]ZUÐڋ@ux|hgPRq( E E@@u |hhPR0( E E@UP0EE]ÐU`\ZdE ,EEEEDž|@u x|hPRd' 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 PY)ЋE쉐,E싀,uDž| U싃P,P&)EjEPEP$ EuDž|Ej0PEЃ||tjjEPK$ 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,P-'Eǀ,jEPz)EEt@j8PT;ET@r0j|P %jP|PEPVj T@r.j|P$jjP|PVj|EE`\ÐU,]؉uZUܸEEEEEEEu|h]PR:! 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@tjjjjo]Ð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 PyEЋEЉEEEEu EjEPIE̋ẺEEEEEujNPR E EE ujOPR E EEujPPR| E ET@r! EPEPE PEPRj=E@jEPTEEtTjEPEPjEPEPCEEt*Eău EEȋU@BEEȃtjEPT@r/jEPtЋEj@PREPVjqEEE]uÐUT]uZUP{ڋBEBEBEEEEEEEE@uhPR E E@@u hPRt E EEu hPR9 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ȋEEjEPGE؋EEjEP0EE EE$EEEEEEE@uhFPR E E@@u hGPRl E EEu hHPR1 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(DjEPa jjPEPVjeEEElhÐU<]ȉuZU̸@rEEEEEE@u hPR E E@@u hPR E EEu hPRE E EEuhPR E EEuhPR E ET@r%HEPEPEPEPEPRjEPEP<EEt6Ej,P!EEtEEjEPHEEuQjjEPEPEPEPEEu*E@ 0UEPBPA\ЃEEtEEEunEu\T@r(LjEPw jjPEPVj{EjEPEPjE PEPIEEt EEtEj,P& EEtjEPy>ET@r(PjEP jjPEPVjEEE]ȋuÐU]ZU踳nڋEE@uh/PR[ 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\hbPRE E ET@r?E t E E`EPEPEPEPEPRjE@EPEP8EEtEj,PNEEtEEEdBEȋBE̋BEЍEԉEEEjEPCEEu'jEPEPjEPEP2EEtEE;EEhBEBEBEB EBEBEMUjjjEPPEP.EEuWj EPEEu>UE@PBPsEEuUE@PBPTEEtmUEPEPBPX EPUBUEPEPBP0 EPUBEUPEEEEjEP\0EtFE@tEjPE@tEjPjEP~E@EE;EoEEEătjEPGEupEu\T@r(ljEPjjPEPVjEjEPEPjE PEPnCEEt%E;EUPEEEtEj,PEEtjEP7EEtjEPET@r/tjEPЋEj@PREPVjEEE]uU<]ȉuZU̸hEE ux|jLPR E EEu|jMPRx 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̋Ẽ9EhCPEP3 EU؉PEEEЃtjEPE؃tjEPT@r(jEP~jjPEPVjEȉ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@r1jEPmȋU EPBPQEPVjhEEE]؋uÐU(]܉uZUP`EEEEEu |huPR E EE u|hvPR E EE@T@rjjE PEPRjkE PEPEEtEEjEPUEEtj/EPEEuEUBE@EEPEPEEtjEPEUEPPEEu*UEPEPP EEtEUPEEEtjEPEEtjEPT@r(jEPjjPEPVjEEE]܋uU]ZU]ڋEuhPRw E EjEPBEEu hPR, E EEEE]ÐU]ZU]jEPEEuhPR E EE@HuhPRj E EE@HEE]ÐU4]ЉuZUԸ@\jEPEEEEEEE u hPR E EEuhPR E EEuhPRU E ET@r%EPEPEPE PEPRj0EFE :Ep.Ep"EHwUԍDUEpujEPEEtET@rPjqEPEPEPE PEPEPYEEt;T@r(jEP jjPEPVj EEtjEPET@r(jEPjjPEPVjEu EE EE؉EE]Ћu$<H0U0]ԉuZUظpYjEPAEEEE uh(PR E EEuh)PR E EEuh*PR E ET@r%EPEPEPE PEPRjUEtEpjEPYEjEPEEtET@rPjEPEPEPE PjEPEEt9T@r( jEPjjPEPVjEEtjEPET@r(jEP)jjPEPVj-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/EEtvEPEPEPs EEtREEEPEPEPi u)T@r4PjEEEtEtjEPfET@r,8jEPMjEPREPVjMEEE]܋uÐU]ZU3TEET@r<PjEjPEPt*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@`h2PRj E ET@r dEjj@PEPRj.E@UHBE@uyE@LtUEj@HPBLЃE@tEj@PE@E@HtEj@HP=E@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@rPjjEPQEEu#T@rPjTE PEP EPjEP E@U@BEP<@EP0issuer_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=%plJJ.J..JK.../$K4K/DKPKdK./>/N/^/n/~//xKK//KK/////00.0>0N0^0n0~00Р000000011.1>1N10N^1n1KKKJKK~1K1L$L4LHLXLhLL1M(M4MMM NXNNNN,O|OOOO12N2jHk^2n2k$l8l~2lm`mmm@nnnoLooooܡHpppp2hqqr3N3Ą 0h ,XhtІ(lćЇ0$xԈ\0̉؉\(Xx^3,< `n3t~334@3Td333<p3ȑ3H34|4$P.4p:@=?,Dh>4N4Hp^4n4~4ԕ 44P 1 D  P ` n v      J J   D 4 ovoxooo+oo78@8XMLLtt9@9`9P<=?@@@A@C b4Dx+H+ + . 4 J JJJl !" fu N J1J 7 ou Qu i6  p -=gq T@qd  P  | z ~ &0I E@]% PT3 J p /p^j LTXd qK 4 OK ZP @6R  0b8 U  {EU RS  GY  V =@ ZH w@F  PGU JO L '@L CMA _Р5  m   P !(4?HJWeJjJoJtJ zK?4HJ78 84 @8: $K4K?4HJ95 @9 (`9 \DK aPKfdKkP<m xK K = KK?H @5 &@@j YA @C ?4HJ0N ?4РHJKeKKJKKK  L?4HJ%$L*4L/HL4XL9hLh>LHDMJ(M P4M`VMD\MHb N8hXN4nNtNzNx,OP|OPOOOP^XD0 Ljt^p^v^D|d ^P0 4_Dx__X_X @`Hp0`4`(`8aD`aD aD&al,Tb@3Y \ c$jС qbxb bbbc@c<d4 ,E $L  S ,,Z Xa h h t\o ІXv 0 (D l$?4HJ   $ N \ć  Ї` 0H $  x    ; Ԉ \0 @ 0H ̉  ؉ \0 0 l (0 X0" 8&0, ( |. x 4 : 4A M?4HJH e jo,X <L`  >P   e Hk `@q w `\} t \ I?4HJ  8 4 e@oT 9 d p:    X  # ,S <4@=p 'pX-ȑ 3,94?? H4X|,^8d0j$,pP@v0| D,D$hL0 DH(p (ԕ8 DP0:?4HJ6  Q0E l. 0  8{ E Cl % 6MU@E n|a / `s    Dz ;NckP4    x   . P  =S[b@ }E   ` Jaf   y1 "+? ? l a E BT :AJ p. p@ ]O p)?  1g U`6   P1 @2  Y p$ -<Qg(a    @  -4JV` 0 O l a v6  ` - Q ` h i   pi  PDi w ! Iy &!4!P N!Ђ i! }!l! !@F !%.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.XBKgoyLN6XaO0tB._pkcs11h_util_binaryToHex.x_pkcs11h_mem_duplicate_pkcs11h_slotevent_init.XBKgoyLO6XaO0VC.__pkcs11h_certificate_updateCertificateIdDescription.separator__pkcs11h_session_touch_g_pkcs11h_data_pkcs11h_session_reset.XAKgoyLN6XaOkFB._g_pkcs11h_crypto_engine_openssl_pkcs11h_session_login_pkcs11h_log_pkcs11h_util_hexToBinary_pkcs11h_token_newTokenId_pkcs11h_token_getTokenId_g_pkcs11h_crypto_enginepkcs11h_token_logout_pkcs1h_threading_mutexLockAll.XBKgoyLO6XaO0VC.__pkcs11h_certificate_updateCertificateIdDescription.unknown_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_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.XBKgoyLN6XaO0tB._pkcs11h_util_escapeString.x_lib_version_pkcs11h_util_fixupFixedString_pkcs11h_threading_condWait_pkcs11h_threading_condInit_pkcs11h_threading_condFree.XAKgoyLN6XaOklB.__s_pkcs11h_threading_mutex_list.XAKgoyLN6XaOkFB._g_pkcs11h_crypto_engine_gnutls_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_getRSAusleepanotate anotate anotate 78@8anotateX TP9 @9`9P<= ?$@(@@,A0@Canotate @O0Nanotate anotate anotate anotate anotate anotate8 40qwP}Panotate anotate anotate GCp:SC@=_C?@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)signal.h 1.43 04/09/28 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)signal_iso.h 1.1 99/08/09 SMI@(#)signal_iso.h 1.6 03/05/02 SMI@(#)unistd.h 1.43 06/03/10 SMI@(#)signal.h 1.66 04/09/28 SMI@(#)siginfo.h 1.59 04/07/15 SMI@(#)machsig.h 1.11 03/09/26 SMI@(#)faultcode.h 1.16 09/07/02 SMI@(#)procset.h 1.25 04/07/16 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)dlfcn.h 1.45 05/08/08 SMI@(#)auxv.h 1.38 09/07/16 SMI@(#)auxv_386.h 1.5 09/06/11 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13@(#)stdio.h 1.84 04/09/28 SMI@(#)feature_tests.h 1.25 07/02/02 SMI@(#)ccompile.h 1.2 04/11/08 SMI@(#)isa_defs.h 1.29 08/06/06 SMI@(#)stdio_iso.h 1.8 05/08/16 SMI@(#)va_list.h 1.15 04/11/19 SMI@(#)stdio_tag.h 1.4 04/09/28 SMI@(#)stdio_impl.h 1.15 07/03/05 SMI@(#)stdio_c99.h 1.2 04/03/29 SMI@(#)stdlib.h 1.51 04/06/30 SMI@(#)stdlib_iso.h 1.9 04/09/28 SMI@(#)stdlib_c99.h 1.2 04/03/29 SMI@(#)string.h 1.27 07/01/14 SMI@(#)string_iso.h 1.5 04/06/18 SMI@(#)stdarg.h 1.47 04/09/28 SMI@(#)stdarg_iso.h 1.4 04/11/19 SMI@(#)va_impl.h 1.1 04/11/19 SMI@(#)stdarg_c99.h 1.2 04/09/28 SMI@(#)assert.h 1.10 04/05/18 SMI@(#)ctype.h 1.35 04/09/28 SMI@(#)ctype_iso.h 1.3 04/09/28 SMI@(#)ctype_c99.h 1.2 04/09/28 SMI@(#)stddef.h 1.18 04/09/28 SMI@(#)stddef_iso.h 1.2 03/03/06 SMI@(#)types.h 1.86 07/09/20 SMI@(#)machtypes.h 1.11 04/09/28 SMI@(#)machtypes.h 1.2 04/09/28 SMI@(#)int_types.h 1.10 04/09/28 SMI@(#)select.h 1.19 04/01/28 SMI@(#)time_impl.h 1.11 05/05/19 SMI@(#)time.h 2.77 09/06/02 SMI@(#)time.h 1.45 08/01/09 SMI@(#)time_iso.h 1.4 04/09/07 SMI@(#)pthread.h 1.37 04/09/28 SMI@(#)sched.h 1.10 03/03/06 SMI@(#)unistd.h 1.76 06/03/10 SMI@(#)unistd.h 1.43 06/03/10 SMIacomp: Sun C 5.11 SunOS_i386 145355-01 2010/10/11as: Sun Compiler Common 12.2 SunOS_i386 2010/08/13ld: Software Generation Utilities - Solaris Link Editors: 5.10-1.497apkcs11h-mem.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-mem.c -W0,-xp.XAKgoyLM6XaOU2A.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLM6XaOU2A.;backend;raw;cd;DBG_GEN 5.3.0_pkcs11h_mem_malloc=45Up;,s< rv>unsigned longCK_RVvoid unsignedsize_t_pkcs11h_mem_freeV576UixpUins_pkcs11h_mem_strdupc@66Udestasrcb char_pkcs11h_mem_duplicater67U|destnp_dest_sizeo srcpmem_sizeqrvs|int __assert    strlen  memset8   8 memmove  = pkcs11h-sys.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-sys.c -W0,-xp.XAKgoyLM6XaOU_A.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLM6XaOU_A.;backend;raw;cd;DBG_GEN 5.3.0__mytime@77Ulongtime_t__mysleepF848UusecFunsigned long__mygettimeofdayQ@8z8U**rtvQintsuseconds_ttimevalr tv_sec# tv_usec1# Cunsignedwsize_tvoid         * pkcs11h_sys_engine_sE malloc# free# time# usleep# gettimeofday#pkcs11h_engine_system_t_g_pkcs11h_sys_engineEVpkcs11h_engine_setSysteme88UenginedCK_RV usleep* wgettimeofday*& r  timeC &charC KC U__assert P Z * memmove   wmalloc wfree (pkcs11h-crypto.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-crypto.c -W0,-xp.XAKgoyLN6XaOkFB.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaOkFB.;backend;raw;cd;DBG_GEN 5.3.0N__pkcs11h_crypto_openssl_initialize959Uglobal_dataintvoid__pkcs11h_crypto_openssl_uninitialize@9X9UIIglobal_data__pkcs11h_crypto_openssl_certificate_get_expiration`9N<Urrglobal_datablob blob_sizeexpirationx509d2inotBefore- notAfter- b:<:<:<tm1unsigned charwunsigned size_tlongw asn1_string_st length# type# data# flags# ASN1_INTEGERchar2: asn1_object_st sn?# ln?# nid# length# data# flags# DASN1_OBJECT2 ASN1_BOOLEAN ASN1_STRING ASN1_ENUMERATED ASN1_BIT_STRING ASN1_OCTET_STRING# ASN1_PRINTABLESTRING@ ASN1_T61STRING` ASN1_IA5STRINGz ASN1_GENERALSTRING ASN1_BMPSTRING ASN1_UNIVERSALSTRING ASN1_UTCTIME ASN1_GENERALIZEDTIME ASN1_VISIBLESTRING$ ASN1_UTF8STRINGB ASN1_VALUE_st ]ASN1_VALUEm  ptr# boolean# asn1_string# object# integer-# enumerated# bit_string# octet_string;# printablestring[# t61stringu# ia5string# generalstring# bmpstring# universalstring# utctime# generalizedtime# visiblestring=# utf8stringX# set# sequence# asn1_value~# asn1_type_stB type# value# ASN1_TYPEB X509_algor_st algorithm# parameterR# WX509_ALGOR22 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_sti notBefore- # notAfter- # 2 X509_VALi 2} w rsa_stX pad# version# meth # engine # n4# e4# d4# p4# q4# dmp14#$ dmq14#( iqmp4#, ex_datal#0 references#8 flags#< _method_mod_n#@ _method_mod_p#D _method_mod_q#H bignum_data#L blinding#P mt_blinding#T RSA      " . : F R ^ j v  rsa_meth_st8 name # rsa_pub_enc # rsa_pub_dec # rsa_priv_enc) # rsa_priv_dec5 # rsa_mod_expA # bn_mod_expM # initY # finishe # flags#$ app_data#( rsa_signq #, rsa_verify} #0 rsa_keygen #4 RSA_METHOD  engine_st ENGINE  bignum_st ' d # top# dmax# neg# flags# BIGNUM' crypto_ex_data_st l skS # dummy# 9CRYPTO_EX_DATA bn_mont_ctx_stH  ri# RR'# N'# Ni'#, n0 #@ flags#D BN_MONT_CTX bn_blinding_st BN_BLINDING 2 w* dsa_stD - pad# version# write_params# p4# q4# g4# pub_key4# priv_key4# kinv4# r4#$ flags#( method_mont_p#, references#0 ex_datal#4 meth#< engine #@ 4DSA- DSA_SIG_st c r4# s4# <DSA_SIG cq/7v dsa_method0  name%# dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_exp# bn_mod_exp# init# finish# flags# app_data#$ dsa_paramgen#( dsa_keygen#, DSA_METHOD42 dh_stL  pad# version# p4# g4# length# pub_key4# priv_key4# flags# method_mont_p# q4#$ j4#( seed#, seedlen#0 counter4#4 references#8 ex_datal#< meth@#D engine #H DH<&+AMYeq dh_method$ + name# generate_key<# compute_keyH# bn_mod_expT# init`# finishl# flags# app_data# generate_paramsx# }DH_METHOD+;  ec_key_stJ  ptr# rsa# dsa# dhE# ecV# evp_pkey_st type# save_type# references# pkey[# save_parameters# attributesS # EVP_PKEY X509_pubkey_st t algor# public_key# pkey*# /X509_PUBKEYt ASN1_ENCODING_st  enc# len# modified# ASN1_ENCODING x509_cinf_st4 version-# serialNumber-# signature# issuer # validityx # subject # key# issuerUID# subjectUID# extensionsS #$ enc#( X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_st X509_POLICY_CACHEw! x509_cert_aux_st trustS # rejectS # aliasX# keyid;# otherS # !X509_CERT_AUX x509_st\ cert_info# sig_alg# signature# valid# references# name# ex_datal# ex_pathlen# ex_pcpathlen#$ ex_flags #( ex_kusage #, ex_xkusage #0 ex_nscert #4 skid;#8 akid#< policy_cache #@ sha1_hash#D aux#X X509w__pkcs11_openssl_d2i_t tm$ tm_sec# tm_min# tm_hour# tm_mday# tm_mon# tm_year# tm_wday# tm_yday# tm_isdst# __pkcs11h_crypto_openssl_certificate_get_dnP<=Uooglobal_data~blob blob_sizedndn_maxx509d2iwty__pkcs11h_crypto_openssl_certificate_is_issuer0=?Uglobal_data+issuer_blob, issuer_blob_size-cert_blob.cert_blob_size/x509_issuer1x509_cert2pub_issuer*3d2i4is_issuer5ww PKCS11H_BOOL).:FR pkcs11h_crypto_engine_s global_data# initialize)# uninitialize5# certificate_get_expirationA# certificate_get_dnM# certificate_is_issuerY# ^pkcs11h_engine_crypto_t_g_pkcs11h_crypto_engine_openssl4|__pkcs11h_crypto_gnutls_initialize??Uglobal_data__pkcs11h_crypto_gnutls_uninitialize@5@Uglobal_data__pkcs11h_crypto_gnutls_certificate_get_expiration@@AU..global_data=blob Bblob_sizeGexpirationcertgdatumnownotBeforenotAfterw38 gnutls_x509_crt_intL bgnutls_x509_crt_t data# size# gnutls_datum_t time_t__pkcs11h_crypto_gnutls_certificate_get_dnA6CU  global_data blob  blob_size dn dn_maxcertgdatumsw  __pkcs11h_crypto_gnutls_certificate_is_issuer-@CDU""global_data("issuer_blob) "issuer_blob_size*%"cert_blob+*"cert_blob_size,cert_issuerg.cert_certg/datum0is_issuer1result2w" "w" "_g_pkcs11h_crypto_engine_gnutls/"{_g_pkcs11h_crypto_engine[pkcs11h_engine_setCryptogEEU""#enginef_engine#hrv"i CK_RV^ ###b"#gnutls_x509_crt_verifyo#b'#,# gnutls_x509_crt_into#gnutls_x509_crt_get_expiration_time##gnutls_x509_crt_get_activation_time##gnutls_x509_crt_get_dn,$b,#,$j$GNUTLS_X509_FMT_DERGNUTLS_X509_FMT_PEMgnutls_x509_crt_import$b1$6$gnutls_x509_crt_deinit$bbgnutls_x509_crt_init$$gnutls_global_deinitgnutls_global_init '% 1%X509_NAME_cmpa%,%6%X509_get_pubkey*%a%X509_get_subject_name %%X509_get_issuer_name %% X509_NAME_oneline&%w&&d2i_X509M&&"&X509_freek&M&X509_newX509_cmp_current_time&}&X509_verify&M&&EVP_PKEY_free&&OpenSSL_add_all_digeststime+''mktimeJ'+'J'localtimeT'v'O'v'gmtimeT''{'2'2'__assert'''memset'' memmove'pkcs11h-threading.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-threading.c -W0,-xp.XAKgoyLN6XaOklB.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLN6XaOklB.;backend;raw;cd;DBG_GEN 5.3.0 unsigned shortuint16_tunsigned charuint8_tm__pthread_mutex_flag1#__pthread_mutex_flag2#__pthread_mutex_ceiling#__pthread_mutex_type#__pthread_mutex_magic#longm__pthread_mutex_padu#unsigneduint32_t__pthread_ownerpid#__pthread_lockword#unsigned long longupad64_t__pthread_mutex_lock64#__pthread_mutex_lock32#__pthread_mutex_owner64# _pthread_mutex__pthread_mutex_flags#__pthread_mutex_lock(#__pthread_mutex_data#_pkcs11h_mutex_t 8 intPKCS11H_BOOL __pkcs11h_threading_mutex_entry_s next#p_mutex#locked%# __pkcs11h_threading_mutex_entry_t mutex#head#__s_pkcs11h_threading_mutex_listUР_pkcs11h_threading_sleep^E5FUDDmilli]_pkcs11h_threading_mutexInite@FJGUmutexdrvfhF #>CK_C_WaitForSlotEvent_CK_FUNCTION_LIST version# C_Initialize<# C_Finalizeh# C_GetInfoH# C_GetFunctionList{# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismList?# C_GetMechanismInfo#$ C_InitToken #( C_InitPINf #, C_SetPIN #0 C_OpenSession* #4 C_CloseSessionW #8 C_CloseAllSessions #< C_GetSessionInfo* #@ C_GetOperationStated #D C_SetOperationState #H C_Login #L C_Logout> #P C_CreateObject #T C_CopyObject #X C_DestroyObjectO #\ C_GetObjectSize #` C_GetAttributeValue #d C_SetAttributeValue#h C_FindObjectsInitE#l C_FindObjects#p C_FindObjectsFinal#t C_EncryptInitE#x C_Encrypt#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInit4# C_Decryptu# C_DecryptUpdate# C_DecryptFinal# C_DigestInit# C_Digest^# C_DigestUpdate# C_DigestKey# C_DigestFinal# C_SignInit/# C_Signm# C_SignUpdate# C_SignFinal# C_SignRecoverInit# C_SignRecoverM# C_VerifyInit# C_Verify# C_VerifyUpdate# C_VerifyFinal.# C_VerifyRecoverInite# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdate8# C_SignEncryptUpdate# C_DecryptVerifyUpdate# C_GenerateKey# C_GenerateKeyPaira# C_WrapKey# C_UnwrapKey# C_DeriveKey;# C_SeedRandomp# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction # C_WaitForSlotEventC#[CK_FUNCTION_LIST_PTRunsigned_pkcs11h_thread_t_pkcs11h_provider_sTV nextp# 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# pCK_BBOOL` t CK_ULONG_PTRCK_SLOT_ID_PTRSCK_ULONG_pkcs11h_session_getObjectAttributesZ@]UdZ!Y'session^'object z'attrs'countrvdiT'_pkcs11h_session_t! !!  !  !  !!  pkcs11h_token_id_sdB" displays!# manufacturerID!# model!# serialNumber!# label!# !B"pkcs11h_token_id_ttime_t#pkcs11h_certificate_id_list_t"CK_BYTE_PTRsize_t pkcs11h_certificate_id_sp# token_idG"# displayName"# attrCKA_ID"# attrCKA_ID_size"# certificate_blob# certificate_blob_size"# "p#pkcs11h_certificate_id_t pkcs11h_certificate_id_list_s# nextm"# certificate_idu## #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  3% __pthread_ownerpid$# __pthread_lockword$#unsigned long long3%upad64_t  % __pthread_mutex_lock64$# __pthread_mutex_lock32$# __pthread_mutex_owner64I%# _pthread_mutex -& __pthread_mutex_flags$# __pthread_mutex_lockX%# __pthread_mutex_dataI%#%_pkcs11h_mutex_t _pkcs11h_session_sDT' nextZ!# reference_count# valid# providerp# token_idG"# session_handle. # allow_protected_auth_supported# pin_cache_period# pin_expire_time`"# cached_certsm"#$ touch#( mutex-&#, D&Z!  CK_ATTRIBUTE_PTRc'_pkcs11h_session_freeObjectAttributes@]e^Ud''attrs'count ic'_pkcs11h_session_findObjectsp^bUd))session)filter )filter_attrs)p_objects)p_objects_foundshould_FindObjectsFinal objects  objects_size  objects_buffer)objects_found oLast rvdS`b`a`atemp 9Z!h )) t  ) c_pkcs11h_session_getSessionByTokenIdbfUd**token_id*p_session mutex_lockedhave_session_mutexsessionZ!current_sessionZ!rvdG" T'*_pkcs11h_session_release  fgUdI+I+session mutex_lockedrvdZ!_pkcs11h_session_resetDgmUdA-A-session@F-user_dataA K-mask_promptBP-p_slotCfoundErvdGnRetryIhlhlhlcurrent_providerpdhk ik ikslots nslotnum oslot_indexpihkiMkiMktoken_idG"infoU-klklklcanceledBZ!CK_TOKEN_INFO_pkcs11h_session_getObjectById moUde.e.session .class  .id.id_size.p_handlefilter.objects objects_found rvdCZ!SCK_OBJECT_CLASSj."" h CK_ATTRIBUTE .. _pkcs11h_session_validateZ opUd//sessionYrvd[Z!__pkcs11h_session_touchp>qUd^/^/sessionZ!_pkcs11h_session_login@quUd00session0is_publicOnly 0readonly0user_data0mask_promptslotrvdrPurPurPulogin_succeededretry_countsunsigned longCK_RVcharlong !  / @ !Q  pkcs11h_token_id_sd display# manufacturerID # model# serialNumber/# label@# Qpkcs11h_token_id_tpkcs11h_token_duplicateTokenIdXwyUNStoVXfromW rvY Npkcs11h_token_sameTokenIdyzUab intPKCS11H_BOOL_pkcs11h_token_getTokenIdz|UOinfop_token_id token_id rvunsigned charO q O  O O CK_FLAGS_CK_VERSION majorO# minorO#O _CK_TOKEN_INFO label`# manufacturerIDq# 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_PTRN_pkcs11h_token_newTokenId|~U??p_token_id rv token_idNpkcs11h_token_logout ~Utoken_id mutex_locked rvsessionH(_pkcs11h_session_tO#_pkcs11h_provider_t!,  void ,J4 9JCK_C_Initializev4 evCK_C_FinalizeO  O  _CK_INFOL1 cryptokiVersion# manufacturerID# flags#$ libraryDescription#( libraryVersion#H G 1 6 G CK_C_GetInfo X _ z d i z CK_C_GetFunctionListCK_SLOT_ID  O   CK_C_GetSlotListO@ ?O  _CK_SLOT_INFOh slotDescription # manufacturerID #@ flags#` hardwareVersion#d firmwareVersion#f      CK_C_GetSlotInfo    CK_C_GetTokenInfoCK_MECHANISM_TYPE 3     3 CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize# ulMaxKeySize# flags# T      CK_C_GetMechanismInfo O     CK_C_InitTokenCK_SESSION_HANDLEZ '   ? Z CK_C_InitPIN '    r  CK_C_SetPINCK_NOTIFICATION '  4  CK_NOTIFY '   4   CK_C_OpenSessionK ' : K CK_C_CloseSessiony  h y CK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFO slotID # state # flags# ulDeviceError# '  CK_C_GetSessionInfoX'   =XCK_C_GetOperationStateCK_OBJECT_HANDLE'  zz CK_C_SetOperationStateCK_USER_TYPE '    CK_C_Login2' !2CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE  typeI# pValue4# ulValueLen# a z'  CK_C_CreateObject' z CK_C_CopyObjectC' z -CCK_C_DestroyObject|' z a|CK_C_GetObjectSize' z CK_C_GetAttributeValue' z CK_C_SetAttributeValue9'  9CK_C_FindObjectsInity'  YyCK_C_FindObjects' CK_C_FindObjectsFinal_CK_MECHANISM  mechanism # pParameter4# ulParameterLen# 9' z 9CK_C_EncryptInitz'    UzCK_C_Encrypt'    CK_C_EncryptUpdate'   CK_C_EncryptFinal(' z (CK_C_DecryptIniti'    DiCK_C_Decrypt'    CK_C_DecryptUpdate'   CK_C_DecryptFinal'  CK_C_DigestInitR'    -RCK_C_Digest'   iCK_C_DigestUpdate' z CK_C_DigestKey'   CK_C_DigestFinal#' z #CK_C_SignInita'    <aCK_C_Sign'   vCK_C_SignUpdate'   CK_C_SignFinal' z CK_C_SignRecoverInitA'    ACK_C_SignRecoverx' z ]xCK_C_VerifyInit'    CK_C_Verify'   CK_C_VerifyUpdate"'   "CK_C_VerifyFinalY' z >YCK_C_VerifyRecoverInit'    {CK_C_VerifyRecover'    CK_C_DigestEncryptUpdate,'    ,CK_C_DecryptDigestUpdateu'    PuCK_C_SignEncryptUpdate'    CK_C_DecryptVerifyUpdate'  CK_C_GenerateKeyU'  !UCK_C_GenerateKeyPair' zz  uCK_C_WrapKey' z  CK_C_UnwrapKey/' z /CK_C_DeriveKeyd'   IdCK_C_SeedRandom'   CK_C_GenerateRandom' CK_C_GetFunctionStatus' CK_C_CancelFunction7 4 7CK_C_WaitForSlotEvent _CK_FUNCTION_LIST! version# C_InitializeO# C_Finalize{# C_GetInfoL # C_GetFunctionList # C_GetSlotList # C_GetSlotInfo # C_GetTokenInfo # C_GetMechanismList8 # C_GetMechanismInfo #$ C_InitToken #( C_InitPIN_ #, C_SetPIN #0 C_OpenSession# #4 C_CloseSessionP #8 C_CloseAllSessions~ #< C_GetSessionInfo##@ C_GetOperationState]#D C_SetOperationState#H C_Login#L C_Logout7#P C_CreateObject#T C_CopyObject#X C_DestroyObjectH#\ C_GetObjectSize#` C_GetAttributeValue#d C_SetAttributeValue#h C_FindObjectsInit>#l C_FindObjects~#p C_FindObjectsFinal#t C_EncryptInit>#x C_Encrypt#| C_EncryptUpdate# C_EncryptFinal# C_DecryptInit-# C_Decryptn# C_DecryptUpdate# C_DecryptFinal# C_DigestInit# C_DigestW# C_DigestUpdate# C_DigestKey# C_DigestFinal# C_SignInit(# C_Signf# C_SignUpdate# C_SignFinal# C_SignRecoverInit# C_SignRecoverF# C_VerifyInit}# C_Verify# C_VerifyUpdate# C_VerifyFinal'# C_VerifyRecoverInit^# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdate1# C_SignEncryptUpdatez# C_DecryptVerifyUpdate# C_GenerateKey # C_GenerateKeyPairZ# C_WrapKey# C_UnwrapKey# C_DeriveKey4# C_SeedRandomi# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction# C_WaitForSlotEvent<#_ CK_FUNCTION_LIST_PTRunsigned!_pkcs11h_thread_t _pkcs11h_provider_sTO# next# enabled# reference# manufacturerID# handle4# f!# should_finalize# allow_protected_auth# cert_is_private# mask_private_mode!# mask_decrypt_mode!# slot_event_method!# slot_poll_interval!# slotevent_thread!# !time_t$pkcs11h_certificate_id_list_t# CK_BYTE_PTR!size_t pkcs11h_certificate_id_sd$ token_id# displayName## attrCKA_ID## attrCKA_ID_size## certificate_blob # certificate_blob_size## #d$pkcs11h_certificate_id_tpkcs11h_certificate_id_list_s$ nexta## certificate_idi$# $unsigned short$uint16_t Ouint8_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_lockL&# __pthread_mutex_data=&#&_pkcs11h_mutex_t_pkcs11h_session_sDH( next# reference_count# valid# provider# token_id# session_handle' # allow_protected_auth_supported# pin_cache_period# pin_expire_timeT## cached_certsa##$ touch#( mutex!'#, 8'pkcs11h_token_loginP ÂU))))token_idM.)readonlyN =)pinOmutex_lockedRslot Tpin_sizeB)UrvVsessionX 3)8)CK_ULONGpkcs11h_token_ensureAccessЂU$*$*token_id)*user_data .*mask_promptmutex_lockedsessionrvslot 4!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)@AU1-1-method';-p_token_id_list( mutex_locked+token_id_list*.current_provider/rv0SƇ>Ƈ>slots@-KslotnumB)Lslot_index MP!ccentry*minfoU-nS__sessionfxxentry*found! %+6- CK_SLOT_ID_PTRCK_TOKEN_INFO i- s-x-!_pkcs11h_util_fixupFixedString-n-}--H(_pkcs11h_session_logout--H(__pkcs11h_session_touch.-H(4! _pkcs11h_session_resetl..$.)...H(_pkcs11h_session_release.l. Q. H(._pkcs11h_session_getSessionByTokenId...O#O . _pkcs11h_session_getSlotListF/.../! K/P/_pkcs11h_log|/F/U/ &|/_pkcs11h_threading_mutexRelease//|/_pkcs11h_threading_mutexLock//, / // !0, 00!_pkcs11h_mem_duplicateY0/000, Y0 ^0c0_pkcs11h_mem_free0h0, 0 00!_pkcs11h_mem_malloc000 0pkcs11h_getMessage0 10 1 1__assertB111 B1strncpyi-q1i-G1! q1strlen#1v1 1 1strcmp11;Qy pkcs11h-certificate.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-certificate.c -W0,-xp.XAKgoyLO6XaO0VC.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLO6XaO0VC.;backend;raw;cd;DBG_GEN 5.3.0A1_pkcs11h_certificate_isBetterCertificatetP Ucurrentpcurrent_sizeq newonernewone_sizesis_betteruЌЌЌnotAfterCurrent notAfterNew intPKCS11H_BOOLunsigned char unsignedsize_t longtime_t_pkcs11h_certificate_newCertificateId %Uwp_certificate_idrvunsigned longCK_RVchar   !      !  pkcs11h_token_id_sdxdisplay#manufacturerID#model#serialNumber#label# xpkcs11h_token_id_t   CK_BYTE_PTRpkcs11h_certificate_id_smtoken_id}#displayName#attrCKA_ID#attrCKA_ID_size#certificate_blob#certificate_blob_size#  mr__pkcs11h_certificate_loadCertificate0&Ut)certificatemutex_lockedcert_filter_classy)cert_filter)objectsobjects_found)rvi)܏_LLattrs)BC mpkcs11h_certificate_id_t(_pkcs11h_session_t $_pkcs11h_provider_t ,  !=  void =_CK_VERSIONzmajor#minor#E zCK_C_InitializeE CK_C_Finalize   CK_FLAGS   _CK_INFOLcryptokiVersionJ#manufacturerID#flags#$libraryDescription#(libraryVersionJ#H  CK_C_GetInfo   CK_C_GetFunctionListCK_SLOT_ID      CK_C_GetSlotList @M ?  ^ _CK_SLOT_INFOh slotDescription< #manufacturerIDM #@flags#`hardwareVersionJ#dfirmwareVersionJ#f ^    CK_C_GetSlotInfo  )   :  K  \  m _CK_TOKEN_INFO label #manufacturerID) # model: #@serialNumberK #Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersionJ#firmwareVersionJ#utcTime\ # m 9  # 9 CK_C_GetTokenInfoCK_MECHANISM_TYPE V  n  s  CK_C_GetMechanismList_CK_MECHANISM_INFO  ulMinKeySize#ulMaxKeySize#flags# " V   " CK_C_GetMechanismInfoc  C c CK_C_InitTokenCK_SESSION_HANDLE }   CK_C_InitPIN }   CK_C_SetPINCK_NOTIFICATION5} E 5CK_NOTIFY } tE:J OtCK_C_OpenSession} CK_C_CloseSession CK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFOYslotID#state#flags#ulDeviceError# t} Y ^tCK_C_GetSessionInfo}  CK_C_GetOperationStateCK_OBJECT_HANDLE }   CK_C_SetOperationStateCK_USER_TYPEa} . AaCK_C_Login} wCK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE type#pValueE#ulValueLen#  &}  &CK_C_CreateObjecth}  ChCK_C_CopyObject}  CK_C_DestroyObject}  CK_C_GetObjectSize}  CK_C_GetAttributeValueR}  2RCK_C_SetAttributeValue}  tCK_C_FindObjectsInit}  CK_C_FindObjects} CK_C_FindObjectsFinal_CK_MECHANISM omechanismV #pParameterE#ulParameterLen# } o tCK_C_EncryptInit}  CK_C_Encrypt }   CK_C_EncryptUpdateF}  +FCK_C_EncryptFinal~} o c~CK_C_DecryptInit}  CK_C_Decrypt}  CK_C_DecryptUpdate5}  5CK_C_DecryptFinalh} o RhCK_C_DigestInit}  CK_C_Digest}  CK_C_DigestUpdate }   CK_C_DigestKeyB}  'BCK_C_DigestFinaly} o ^yCK_C_SignInit}  CK_C_Sign}  CK_C_SignUpdate}  CK_C_SignFinalR} o 7RCK_C_SignRecoverInit}  rCK_C_SignRecover} o CK_C_VerifyInit}  CK_C_Verify@}  %@CK_C_VerifyUpdatex}  ]xCK_C_VerifyFinal} o CK_C_VerifyRecoverInit}  CK_C_VerifyRecover9}  9CK_C_DigestEncryptUpdate}  ]CK_C_DecryptDigestUpdate}  CK_C_SignEncryptUpdate}  CK_C_DecryptVerifyUpdate[} o 6[CK_C_GenerateKey} o wCK_C_GenerateKeyPair} o CK_C_WrapKeyA} o ACK_C_UnwrapKey} o [CK_C_DeriveKey}  CK_C_SeedRandom}  CK_C_GenerateRandom }  CK_C_GetFunctionStatusS} BSCK_C_CancelFunctionE rCK_C_WaitForSlotEvent_CK_FUNCTION_LIST#versionJ#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList% #C_GetSlotInfo #C_GetTokenInfo> #C_GetMechanismList # C_GetMechanismInfo' #$C_InitTokenh #(C_InitPIN #,C_SetPIN #0C_OpenSessiony#4C_CloseSession#8C_CloseAllSessions#<C_GetSessionInfoy#@C_GetOperationState#DC_SetOperationState#HC_Loginf#LC_Logout#PC_CreateObject+#TC_CopyObjectm#XC_DestroyObject#\C_GetObjectSize#`C_GetAttributeValue#dC_SetAttributeValueW#hC_FindObjectsInit#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInit#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinalK#C_DecryptInit#C_Decrypt#C_DecryptUpdate#C_DecryptFinal:#C_DigestInitm#C_Digest#C_DigestUpdate#C_DigestKey#C_DigestFinalG#C_SignInit~#C_Sign#C_SignUpdate#C_SignFinal"#C_SignRecoverInitW#C_SignRecover#C_VerifyInit#C_Verify#C_VerifyUpdateE#C_VerifyFinal}#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate>#C_DecryptDigestUpdate#C_SignEncryptUpdate#C_DecryptVerifyUpdate#C_GenerateKey`#C_GenerateKeyPair#C_WrapKey#C_UnwrapKeyF#C_DeriveKey#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus%#C_CancelFunctionX#C_WaitForSlotEvent#CK_FUNCTION_LIST_PTR_pkcs11h_thread_t _pkcs11h_provider_sT $next#enabled#reference#manufacturerID,#handleE#f##should_finalize#allow_protected_auth#cert_is_private#mask_private_mode#mask_decrypt_mode#slot_event_method#slot_poll_interval#slotevent_thread+## C# %pkcs11h_certificate_id_list_tpkcs11h_certificate_id_list_s %next$#certificate_id# $unsigned short%uint16_t uint8_t  %__pthread_mutex_flag1#%#__pthread_mutex_flag22%#__pthread_mutex_ceiling2%#__pthread_mutex_type#%#__pthread_mutex_magic#%# 2%%  &__pthread_mutex_pad%#uint32_t  a&__pthread_ownerpid&#__pthread_lockword&#unsigned long longa&upad64_t  &__pthread_mutex_lock64%#__pthread_mutex_lock32#&#__pthread_mutex_owner64w&#_pthread_mutex ['__pthread_mutex_flags@%#__pthread_mutex_lock&#__pthread_mutex_dataw&#&_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['#, r'pkcs11h_certificate_s8S)id#pin_cache_period#mask_private_mode#session# key_handle#operation_active#mutex['#mask_prompt#0user_dataE#4 (S)pkcs11h_certificate_tX)CK_OBJECT_CLASSCK_ATTRIBUTE )) CK_ULONG ) ) __pkcs11h_certificate_updateCertificateIdDescription0Ul*certificate_idseparatorq*unknown{* l* v*__pkcs11h_certificate_getKeyAttributesrU",",certificatemutex_lockedrvop_succeedlogin_retry͔͔key_attrs',ydydykey_attrs_signG,key_attrs_sign_recoverG,key_attrs_decryptG,key_attrs_unwrapG,CX) )08, CK_BBOOL 8,_pkcs11h_certificate_validateSession^U,,certificate]rvdX)_pkcs11h_certificate_resetSessionU--certificate-public_only -session_mutex_lockedmutex_lockedsession_validcert_handlervX)__pkcs11h_certificate_doPrivateOperationU//certificate 0op  0mech_type 0source0source_size0target0p_target_size mutex_lockedmech0wrap_attrs_true8,classy)keytype0wrap_attrs0wrap_value0$wrap_key'rv)login_retry*op_succeed+;xGlGlsize)LCX)__pkcs11h_private_op_e0__pkcs11h_private_op_sign__pkcs11h_private_op_sign_recover__pkcs11h_private_op_decrypt__pkcs11h_private_op_unwrap/V  00 0CK_MECHANISMCK_KEY_TYPE )$0  ) 1 pkcs11h_certificate_freeCertificateId$U]1certificate_id#pkcs11h_certificate_duplicateCertificateIdGQU11toE1fromF rvHrpkcs11h_certificate_setCertificateIdCertificateBlob`rU22certificate_id2blob 2blob_sizerv 22pkcs11h_certificate_freeCertificateU2X)certificatepkcs11h_certificate_lockSession US3S3certificatervX)pkcs11h_certificate_releaseSession5U33certificatervX)pkcs11h_certificate_sign@U44certificate4mech_type 4source4source_size4target4p_target_sizervX)V  440pkcs11h_certificate_signRecoverZձU55certificateT5mech_typeU 5sourceV5source_sizeW5targetX5p_target_sizeYrv[X)V  550pkcs11h_certificate_decrypt%Ut6t6certificatey6mech_type 6source6source_size6target6p_target_sizervX)V  ~660pkcs11h_certificate_unwrap0uUe7e7certificatej7mech_type y7source~7source_size7target7p_target_sizervX)V  o7t70pkcs11h_certificate_signAnyUm8m8certificater8mech_type 8source8source_size8target8p_target_sizervackedX)V  w8|80pkcs11h_certificate_decryptAnyQUx9x9certificate}9mech_type 9source9source_size9target9p_target_sizervackedX)V  990pkcs11h_certificate_create`U::certificate_id:user_data :mask_prompt:pin_cache_period:p_certificatehave_mutexmutex_lockedcertificateX)rvE S):pkcs11h_certificate_getPromptMaskv U*;*;certificateuX)pkcs11h_certificate_setPromptMaskU;;certificate~;mask_prompt X)pkcs11h_certificate_getUserDatalUE;;certificateX)pkcs11h_certificate_setUserDatapUZ<Z<certificate_<user_data X)Epkcs11h_certificate_getCertificateIdU<<certificate<p_certificate_id rvX)rpkcs11h_certificate_getCertificateBlobU:>:>certificate?>certificate_blob D>p_certificate_blob_sizemutex_lockedrvcertifiate_blob_size_maxWllop_succeedlogin_retryX)0pkcs11h_certificate_ensureCertificateAccess3UH?H?certificate2mutex_locked_cert5mutex_locked_sess6validCert8rv9##hMX)pkcs11h_certificate_ensureKeyAccessU@@certificatemutex_locked_certmutex_locked_sessrvvalid_keyX)_pkcs11h_certificate_enumSessionCertificates >U-B-Bsession 2Buser_data  7Bmask_prompt mutex_locked op_succeed login_retry rv coocert_filter_classy)) cert_filterYCK_C_GetSlotList @W?  W_CK_SLOT_INFOhslotDescriptionu#manufacturerID#@flags#`hardwareVersion#dfirmwareVersion#f5#5CK_C_GetSlotInfo  bW  sW W W W_CK_TOKEN_INFOW labelQ#manufacturerIDb# models#@serialNumber#Pflags#`ulMaxSessionCount#dulSessionCount#hulMaxRwSessionCount#lulRwSessionCount#pulMaxPinLen#tulMinPinLen#xulTotalPublicMemory#|ulFreePublicMemory#ulTotalPrivateMemory#ulFreePrivateMemory#hardwareVersion#firmwareVersion#utcTime#r #W \ r CK_C_GetTokenInfoCK_MECHANISM_TYPE  # 9  CK_C_GetMechanismList_CK_MECHANISM_INFO ; ulMinKeySize#ulMaxKeySize#flags# [ # ; @ [ CK_C_GetMechanismInfo #| |   CK_C_InitTokenCK_SESSION_HANDLE  |   CK_C_InitPIN+  | |  + CK_C_SetPINCK_NOTIFICATIONs  B X s CK_NOTIFY  #x    CK_C_OpenSession    CK_C_CloseSession #  CK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFO slotID##state. #flags#ulDeviceError# =      CK_C_GetSessionInfo  | 9  CK_C_GetOperationStateCK_OBJECT_HANDLEJ  |   % J CK_C_SetOperationStateCK_USER_TYPE  l |   CK_C_Login    CK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE :type #pValue#ulValueLen#  d :?DdCK_C_CreateObject  :?CK_C_CopyObject  CK_C_DestroyObject  9CK_C_GetObjectSizeN  :.NCK_C_GetAttributeValue  :pCK_C_SetAttributeValue :CK_C_FindObjectsInit  ?9 CK_C_FindObjects: ):CK_C_FindObjectsFinal_CK_MECHANISM mechanism #pParameter#ulParameterLen#[  CK_C_EncryptInit | | 9CK_C_EncryptK | | 9&KCK_C_EncryptUpdate | 9iCK_C_EncryptFinal  CK_C_DecryptInit | | 9CK_C_Decrypt: | | 9:CK_C_DecryptUpdates | 9XsCK_C_DecryptFinal CK_C_DigestInit | | 9CK_C_Digest | CK_C_DigestUpdateK  5KCK_C_DigestKey | 9eCK_C_DigestFinal  CK_C_SignInit | | 9CK_C_Sign% |  %CK_C_SignUpdate[ | 9@[CK_C_SignFinal  uCK_C_SignRecoverInit | | 9CK_C_SignRecover    CK_C_VerifyInitL | | 'LCK_C_Verify~ | c~CK_C_VerifyUpdate | CK_C_VerifyFinal  CK_C_VerifyRecoverInit4 | | 94CK_C_VerifyRecoverw | | 9RwCK_C_DigestEncryptUpdate | | 9CK_C_DecryptDigestUpdate  | | 9 CK_C_SignEncryptUpdateP | | 9+PCK_C_DecryptVerifyUpdate :?tCK_C_GenerateKey ::??CK_C_GenerateKeyPair3   | 9 3CK_C_WrapKey  | :?KCK_C_UnwrapKey  :?CK_C_DeriveKey | CK_C_SeedRandom. | .CK_C_GenerateRandom^ M^CK_C_GetFunctionStatus CK_C_CancelFunction4CK_C_WaitForSlotEvent_CK_FUNCTION_LISTN version#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList^#C_GetSlotInfo:#C_GetTokenInfow #C_GetMechanismList # C_GetMechanismInfo` #$C_InitToken #(C_InitPIN #,C_SetPIN0 #0C_OpenSession #4C_CloseSession #8C_CloseAllSessions #<C_GetSessionInfo #@C_GetOperationState #DC_SetOperationStateO #HC_Login #LC_Logout #PC_CreateObjecti#TC_CopyObject#XC_DestroyObject#\C_GetObjectSize#`C_GetAttributeValueS#dC_SetAttributeValue#hC_FindObjectsInit#lC_FindObjects#pC_FindObjectsFinal?#tC_EncryptInit#xC_Encrypt#|C_EncryptUpdateP#C_EncryptFinal#C_DecryptInit#C_Decrypt#C_DecryptUpdate?#C_DecryptFinalx#C_DigestInit#C_Digest#C_DigestUpdate#C_DigestKeyP#C_DigestFinal#C_SignInit#C_Sign#C_SignUpdate*#C_SignFinal`#C_SignRecoverInit#C_SignRecover#C_VerifyInit#C_VerifyQ#C_VerifyUpdate#C_VerifyFinal#C_VerifyRecoverInit#C_VerifyRecover9#C_DigestEncryptUpdate|#C_DecryptDigestUpdate#C_SignEncryptUpdate#C_DecryptVerifyUpdateU#C_GenerateKey#C_GenerateKeyPair#C_WrapKey8#C_UnwrapKey#C_DeriveKey#C_SeedRandom#C_GenerateRandom3#C_GetFunctionStatusc#C_CancelFunction#C_WaitForSlotEvent#CK_FUNCTION_LIST_PTR/_pkcs11h_thread_t_pkcs11h_provider_sT!next#enabled<#reference_#manufacturerIDr#handle#fN #should_finalize<#allow_protected_auth<#cert_is_private<#mask_private_mode/#mask_decrypt_mode/#slot_event_method/#slot_poll_interval/#slotevent_threadi # CK_RVCK_ULONG9CK_SLOT_ID_PTRCK_TOKEN_INFO__pkcs11h_slotevent_managerDU"pCfirst_time<E f[ 7 7current_provider\ [current_provider_pkcs11h_slotevent_initU!.#rv!_pkcs11h_slotevent_notify U!_pkcs11h_slotevent_terminate_force@U!_pkcs11h_slotevent_terminate@ U!!9#!_pkcs11h_session_getSlotList!"$####/O'$,$_pkcs11h_logX$"$1$/X$_pkcs11h_threading_threadJoin!$]$X$$$$_pkcs11h_threading_threadStart!$$$$uint8_t $%Wunsigned short%uint16_t%__pthread_cond_flag%#__pthread_cond_type%%#__pthread_cond_magic%%#unsigned long long%upad64_t_pthread_cond&__pthread_cond_flags4%#__pthread_cond_data%#%pthread_cond_t&__pthread_mutex_flag1%%#__pthread_mutex_flag2$#__pthread_mutex_ceiling$#__pthread_mutex_type%%#__pthread_mutex_magic%%# $&W&__pthread_mutex_pad&#/uint32_t;'__pthread_ownerpid&#__pthread_lockword&#'__pthread_mutex_lock64&#__pthread_mutex_lock32&#__pthread_mutex_owner64%#_pthread_mutex(__pthread_mutex_flags&#__pthread_mutex_lock;'#__pthread_mutex_data%#'pthread_mutex_t(G(cond&#mut(#&(G(_pkcs11h_threading_condFree!(L(G(/_pkcs11h_threading_condWait!(((G(_pkcs11h_threading_condInit!((G(_pkcs11h_threading_condSignal!()(/_pkcs11h_threading_sleepU)()OZ)pkcs11h_getMessage_))U))))_pkcs11h_mem_free!)@+ pkcs11h-core.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-core.c -W0,-xp.XAKgoyLP6XaOE6C.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaOE6C.;backend;raw;cd;DBG_GEN 5.3.0^intPKCS11H_BOOL{_pkcs11h_provider_tcharlong! voidunsigned char _CK_VERSION: major# minor#unsigned long :\ K\CK_C_Initialize : wCK_C_Finalize :CK_FLAGS  _CK_INFOLR cryptokiVersion # manufacturerID# flags#$ libraryDescription#( libraryVersion #H :h RWhCK_C_GetInfo : CK_C_GetFunctionList:CK_SLOT_ID: :   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_MECHANISM_TYPE' :_  ? D_CK_C_GetMechanismList _CK_MECHANISM_INFO  ulMinKeySize:# ulMaxKeySize:# flags# :  ' CK_C_GetMechanismInfo :9   : 9CK_C_InitToken:CK_SESSION_HANDLE : S  :kCK_C_InitPIN : S  :  :CK_C_SetPIN:CK_NOTIFICATION : S   CK_NOTIFYS :J     % J CK_C_OpenSession :w Sf w CK_C_CloseSession :   CK_C_CloseAllSessions:CK_STATE _CK_SESSION_INFO/ slotID# state # flags# ulDeviceError:#  :J S / 4 J CK_C_GetSessionInfo : S  i  CK_C_GetOperationState:CK_OBJECT_HANDLE : S  :   CK_C_SetOperationState:CK_USER_TYPE :7 S   : 7 CK_C_Login :^ SM ^ CK_C_Logout:CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  typeu # pValue# ulValueLen:#  : S :   CK_C_CreateObject :> S :  > CK_C_CopyObject :o S Y o CK_C_DestroyObject : S   CK_C_GetObjectSize : S :  CK_C_GetAttributeValue :( S : ( CK_C_SetAttributeValue :e S :J e CK_C_FindObjectsInit : S :   CK_C_FindObjects : S  CK_C_FindObjectsFinal _CK_MECHANISM E mechanism'# pParameter# ulParameterLen:# :e S E JeCK_C_EncryptInit : S  :  CK_C_Encrypt : S  :  CK_C_EncryptUpdate : S  CK_C_EncryptFinal :T S E 9TCK_C_DecryptInit : S  :  pCK_C_Decrypt : S  :  CK_C_DecryptUpdate :  S   CK_C_DecryptFinal :> S E(>CK_C_DigestInit :~ S  :  Y~CK_C_Digest : S  :CK_C_DigestUpdate : S CK_C_DigestKey : S  CK_C_DigestFinal :O S E 4OCK_C_SignInit : S  :  hCK_C_Sign : S  :CK_C_SignUpdate : S  CK_C_SignFinal :( S E  (CK_C_SignRecoverInit :m S  :  HmCK_C_SignRecover : S E CK_C_VerifyInit : S  :  :CK_C_Verify : S  :CK_C_VerifyUpdate :N S  :3NCK_C_VerifyFinal : S E jCK_C_VerifyRecoverInit : S  :  CK_C_VerifyRecover : S  :  CK_C_DigestEncryptUpdate :X S  :  3XCK_C_DecryptDigestUpdate : S  :  |CK_C_SignEncryptUpdate : S  :  CK_C_DecryptVerifyUpdate :1 S E :  1CK_C_GenerateKey : S E : : MCK_C_GenerateKeyPair : S E  CK_C_WrapKey : S E  : : CK_C_UnwrapKey :[ S E : 1[CK_C_DeriveKey : S  :uCK_C_SeedRandom : S  :CK_C_GenerateRandom : SCK_C_GetFunctionStatus :) S)CK_C_CancelFunction :c   HcCK_C_WaitForSlotEvent _CK_FUNCTION_LIST version # C_Initializea# C_Finalize# C_GetInfom# C_GetFunctionList# C_GetSlotList# C_GetSlotInfo# C_GetTokenInfo# C_GetMechanismListd# C_GetMechanismInfo#$ C_InitToken>#( C_InitPIN#, C_SetPIN#0 C_OpenSessionO #4 C_CloseSession| #8 C_CloseAllSessions #< C_GetSessionInfoO #@ C_GetOperationState #D C_SetOperationState #H C_Login< #L C_Logoutc #P C_CreateObject #T C_CopyObjectC #X C_DestroyObjectt #\ C_GetObjectSize #` C_GetAttributeValue #d C_SetAttributeValue- #h C_FindObjectsInitj #l C_FindObjects #p C_FindObjectsFinal #t C_EncryptInitj#x C_Encrypt#| C_EncryptUpdate# C_EncryptFinal!# C_DecryptInitY# C_Decrypt# C_DecryptUpdate# C_DecryptFinal# C_DigestInitC# C_Digest# C_DigestUpdate# C_DigestKey# C_DigestFinal# C_SignInitT# C_Sign# C_SignUpdate# C_SignFinal# C_SignRecoverInit-# C_SignRecoverr# C_VerifyInit# C_Verify# C_VerifyUpdate# C_VerifyFinalS# C_VerifyRecoverInit# C_VerifyRecover# C_DigestEncryptUpdate# C_DecryptDigestUpdate]# C_SignEncryptUpdate# C_DecryptVerifyUpdate# C_GenerateKey6# C_GenerateKeyPair# C_WrapKey# C_UnwrapKey# C_DeriveKey`# C_SeedRandom# C_GenerateRandom# C_GetFunctionStatus# C_CancelFunction.# C_WaitForSlotEventh#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 #%z%_pkcs11h_session_t! ! pkcs11h_token_id_sdh display# manufacturerID# model# serialNumber# label#h pkcs11h_token_id_ttime_t"pkcs11h_certificate_id_list_t CK_BYTE_PTRsize_t pkcs11h_certificate_id_s! token_idm # displayName # attrCKA_ID # attrCKA_ID_size # certificate_blob# certificate_blob_size # !pkcs11h_certificate_id_t pkcs11h_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 Y# __pthread_ownerpid ## __pthread_lockword ##unsigned long longY#upad64_t# __pthread_mutex_lock64"# __pthread_mutex_lock32## __pthread_mutex_owner64o## _pthread_mutexS$ __pthread_mutex_flags8"# __pthread_mutex_lock~## __pthread_mutex_datao###_pkcs11h_mutex_t _pkcs11h_session_sDz% next# reference_count# valid# provider# token_idm # session_handleS# allow_protected_auth_supported# pin_cache_period# pin_expire_time # cached_certs #$ touch#( mutexS$#,j$%%va_list % % % % %%%pkcs11h_hook_log_t% %%%pkcs11h_hook_slotevent_tm  J& & & & %&*&J&pkcs11h_hook_token_prompt_tm & & q& v& {& & & &&&pkcs11h_hook_pin_prompt_t ' log_data# slotevent_data# token_prompt_data# pin_prompt_data# log%# slotevent%# token_promptO&# pin_prompt&#H' globalS$# sessionS$# cacheS$#0*"'.( __pthread_cond_flag'# __pthread_cond_type"# __pthread_cond_magic"# _pthread_cond}( __pthread_cond_flags'# __pthread_cond_datao##.(pthread_cond_t#pthread_mutex_t(( cond}(# mut(#(_pkcs11h_cond_t8I) initialized# should_terminate# skip_event# cond_event(# thread #4 _pkcs11h_data_s%* initialized# pin_cache_period# providers# sessions# hooks&# allow_protected_auth#0 max_retries#4 mutexes'#8 safefork# slotevent(#I)%*_pkcs11h_data_t_g_pkcs11h_data**_g_pkcs11h_loglevelpkcs11h_getMessageU***rv*:CK_RV*pkcs11h_getVersionUpkcs11h_getFeaturesUE+featurespkcs11h_initializeU*+has_mutex_globalhas_mutex_cachehas_mutex_sessionrv*data**pkcs11h_terminate9U*, 2 2 current_provider  currentARRcurrentpkcs11h_setLogLevel@rU--flagspkcs11h_setForkModeDU*V-V-safepkcs11h_getLogLevelPUpkcs11h_setLogHook U*--hook -global_data  %pkcs11h_setSlotEventHook )U*?.?.hookD.global_data %pkcs11h_setPINPromptHook108U*..hook/.global_data0 &pkcs11h_setTokenPromptHook@@HU* / /hook>/global_data? O&pkcs11h_setPINCachePeriodNPU*f/f/pin_cache_periodMpkcs11h_setMaxLoginRetriesZ U*//max_retriesYpkcs11h_setProtectedAuthenticationfU*00allow_protected_authepkcs11h_addProviderx U*22referenceq-2provider_locationr 22allow_protected_auths72mask_private_modet<2slot_event_methoduA2slot_poll_intervalvF2cert_is_privatew mutex_lockedzmypidK2pprovidergflinitargs3pinitargs3info3rv*n      last22#2(2pid_t :m2 W2\2m2CK_CREATEMUTEX :2 22CK_DESTROYMUTEX :2 22CK_LOCKMUTEX :2 22CK_UNLOCKMUTEX _CK_C_INITIALIZE_ARGS3 CreateMutexr2# DestroyMutex2# LockMutex2# UnlockMutex2# flags# pReserved#3CK_C_INITIALIZE_ARGS33CK_C_INITIALIZE_ARGS_PTRCK_INFOpkcs11h_removeProviderS U*44referenceRcurrent_sessionUhas_mutex_globalVhas_mutex_cacheWhas_mutex_sessionXproviderZrv*[44pkcs11h_forkFixupU*pkcs11h_plugAndPlaysU*5mypidK2,ESESEcurrentslot_event_activepkcs11h_logout*U*:6current_session+rv*,h W W_rv*<_pkcs11h_logcU66flags`6formata ...bargs%d66__pkcs11h_hooks_default_logU6767global_data;7flags J7format%args@7E7__pkcs11h_hooks_default_token_promptGU77global_data7user_data 7token7retrym __pkcs11h_hooks_default_pin_promptPU88global_data8user_data 8token8retry8pin8pin_maxm & __pkcs11h_threading_atfork_prepareNU __pkcs11h_threading_atfork_parentPU __pkcs11h_threading_atfork_child.U__pkcs11h_forkFixup0U* : :activate_sloteventmutex_lockedmypidK2current !_pkcs11h_slotevent_terminate*!_pkcs11h_slotevent_terminate_force*!_pkcs11h_slotevent_notify*!_pkcs11h_slotevent_init*z%"_pkcs11h_session_logout*: :!getpidK2""pkcs11h_certificate_freeCertificateIdList*&; :&+;0;#_pkcs11h_util_fixupFixedStringw; &; 5; :;w;|;;"_pkcs11h_mem_free*; ;;;;"_pkcs11h_mem_malloc*; ; ;$_pkcs1h_threading_mutexReleaseAll$_pkcs1h_threading_mutexLockAll#@<"_pkcs11h_threading_mutexFree*z< E<@<"_pkcs11h_threading_mutexRelease*< z<@<"_pkcs11h_threading_mutexLock*< <@<"_pkcs11h_threading_mutexInit*= <#_pkcs11h_threading_sleepI= =%I=%Q=%Y="pthread_atfork= L= T= \="pkcs11h_token_freeTokenId*= = = ==&=&=&=&= pkcs11h_crypto_engine_s > global_data# initialize=# uninitialize=# certificate_get_expiration=# certificate_get_dn=# certificate_is_issuer># >>>"pkcs11h_engine_setCrypto*> >"dlclose? ?"dlsym@?  ?@?"dlopeni? E? i?s?#__assert? n? x? ?"strncpy&? & ? ?"strlen ? ???"strcmp%@ ? @"memsetI@   I@"memmovex@  N@ x@'getenv& }@3pkcs11h-data.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-data.c -W0,-xp.XAKgoyLP6XaO0BD.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaO0BD.;backend;raw;cd;DBG_GEN 5.3.0&s_pkcs11h_data_getObjectCSU}&session?&application@ &labelA&p_handleBclass&Dfilter&Eobjects Jobjects_found&KrvLC unsigned long}CK_RV&_pkcs11h_session_tintPKCS11H_BOOL _pkcs11h_provider_tcharlong   !  void unsigned char _CK_VERSIONimajor(#minor(#}z# izCK_C_Initialize}# CK_C_Finalize (  }CK_FLAGS (   _CK_INFOLpcryptokiVersion9#manufacturerID#flags#$libraryDescription#(libraryVersion9#H }p uCK_C_GetInfo  } CK_C_GetFunctionList}CK_SLOT_ID  }}( CK_C_GetSlotList (@< ? ( M  _CK_SLOT_INFOhslotDescription+#manufacturerID<#@flags#`hardwareVersion9#dfirmwareVersion9#f M} CK_C_GetSlotInfo (   ( )  (:  (K  (\  _CK_TOKEN_INFO label#manufacturerID# model)#@serialNumber:#Pflags#`ulMaxSessionCount}#dulSessionCount}#hulMaxRwSessionCount}#lulRwSessionCount}#pulMaxPinLen}#tulMinPinLen}#xulTotalPublicMemory}#|ulFreePublicMemory}#ulTotalPrivateMemory}#ulFreePrivateMemory}#hardwareVersion9#firmwareVersion9#utcTimeK# \}(  (CK_C_GetTokenInfo}CK_MECHANISM_TYPE E}}] b}CK_C_GetMechanismList _CK_MECHANISM_INFO ulMinKeySize}#ulMaxKeySize}#flags# } E  CK_C_GetMechanismInfo (}W 2 }2 7 W CK_C_InitToken}CK_SESSION_HANDLE} q 2 }  CK_C_InitPIN} q 2 }2 }  CK_C_SetPIN}CK_NOTIFICATION}) q  #  ) CK_NOTIFY q }h #. > C h CK_C_OpenSession} q  CK_C_CloseSession}   CK_C_CloseAllSessions}CK_STATE _CK_SESSION_INFOM slotID#state #flags#ulDeviceError}# }h q M R h CK_C_GetSessionInfo} q 2   CK_C_GetOperationState}CK_OBJECT_HANDLE} q 2 }   CK_C_SetOperationState}CK_USER_TYPE}U q " 2 } 5 U CK_C_Login}| q k | CK_C_Logout}CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE  type #pValue##ulValueLen}# } q  }  CK_C_CreateObject}\ q   } 7 \ CK_C_CopyObject} q  w  CK_C_DestroyObject} q    CK_C_GetObjectSize}q   } CK_C_GetAttributeValue}Fq   } &FCK_C_SetAttributeValue}q  } hCK_C_FindObjectsInit}q  } CK_C_FindObjects}q CK_C_FindObjectsFinal _CK_MECHANISM cmechanismE#pParameter##ulParameterLen}# }q c hCK_C_EncryptInit}q 2 }2  CK_C_Encrypt}q 2 }2  CK_C_EncryptUpdate}:q 2  :CK_C_EncryptFinal}rq c WrCK_C_DecryptInit}q 2 }2  CK_C_Decrypt}q 2 }2  CK_C_DecryptUpdate})q 2  )CK_C_DecryptFinal}\q c F\CK_C_DigestInit}q 2 }2  wCK_C_Digest}q 2 } CK_C_DigestUpdate}q  CK_C_DigestKey}6q 2  6CK_C_DigestFinal}mq c RmCK_C_SignInit}q 2 }2  CK_C_Sign}q 2 } CK_C_SignUpdate}q 2  CK_C_SignFinal}Fq c +FCK_C_SignRecoverInit}q 2 }2  fCK_C_SignRecover}q c CK_C_VerifyInit}q 2 }2 } CK_C_Verify}4q 2 } 4CK_C_VerifyUpdate}lq 2 } QlCK_C_VerifyFinal}q c CK_C_VerifyRecoverInit}q 2 }2  CK_C_VerifyRecover}-q 2 }2  -CK_C_DigestEncryptUpdate}vq 2 }2  QvCK_C_DecryptDigestUpdate}q 2 }2  CK_C_SignEncryptUpdate}q 2 }2  CK_C_DecryptVerifyUpdate}Oq c } *OCK_C_GenerateKey}q c } }  kCK_C_GenerateKeyPair}q c  2  CK_C_WrapKey}5q c 2 } } 5CK_C_UnwrapKey}yq c  } OyCK_C_DeriveKey}q 2 } CK_C_SeedRandom}q 2 } CK_C_GenerateRandom}q CK_C_GetFunctionStatus}Gq 6GCK_C_CancelFunction}# fCK_C_WaitForSlotEvent_CK_FUNCTION_LISTversion9#C_Initialize#C_Finalize#C_GetInfo# C_GetFunctionList#C_GetSlotList#C_GetSlotInfo#C_GetTokenInfo-#C_GetMechanismList# C_GetMechanismInfo #$C_InitToken\ #(C_InitPIN #,C_SetPIN #0C_OpenSessionm #4C_CloseSession #8C_CloseAllSessions #<C_GetSessionInfom #@C_GetOperationState #DC_SetOperationState #HC_LoginZ #LC_Logout #PC_CreateObject #TC_CopyObjecta #XC_DestroyObject #\C_GetObjectSize #`C_GetAttributeValue #dC_SetAttributeValueK#hC_FindObjectsInit#lC_FindObjects#pC_FindObjectsFinal#tC_EncryptInit#xC_Encrypt#|C_EncryptUpdate#C_EncryptFinal?#C_DecryptInitw#C_Decrypt#C_DecryptUpdate#C_DecryptFinal.#C_DigestInita#C_Digest#C_DigestUpdate#C_DigestKey#C_DigestFinal;#C_SignInitr#C_Sign#C_SignUpdate#C_SignFinal#C_SignRecoverInitK#C_SignRecover#C_VerifyInit#C_Verify#C_VerifyUpdate9#C_VerifyFinalq#C_VerifyRecoverInit#C_VerifyRecover#C_DigestEncryptUpdate2#C_DecryptDigestUpdate{#C_SignEncryptUpdate#C_DecryptVerifyUpdate #C_GenerateKeyT#C_GenerateKeyPair#C_WrapKey#C_UnwrapKey:#C_DeriveKey~#C_SeedRandom#C_GenerateRandom#C_GetFunctionStatus#C_CancelFunctionL#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+# C  !      !  pkcs11h_token_id_sdm!display #manufacturerID #model #serialNumber #label # m!pkcs11h_token_id_ttime_t #pkcs11h_certificate_id_list_t! 2 CK_BYTE_PTRsize_t pkcs11h_certificate_id_s"token_idr!#displayName!#attrCKA_ID!#attrCKA_ID_size!#certificate_blob2 #certificate_blob_size!# !"pkcs11h_certificate_id_t pkcs11h_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_owner64t$# _pthread_mutex X%__pthread_mutex_flags=##__pthread_mutex_lock$#__pthread_mutex_datat$#$_pkcs11h_mutex_t _pkcs11h_session_sD&next#reference_count#valid#provider# token_idr!#session_handleq #allow_protected_auth_supported#pin_cache_period#pin_expire_time!# cached_certs!#$touch#(mutexX%#, o% && && }CK_OBJECT_CLASS CK_ATTRIBUTE &$& }CK_ULONGpkcs11h_data_get`U((token_id(is_public (application(label(user_data(mask_prompt(blob (p_blob_size$attrs(handle rvmutex_lockedsessionop_succeedlogin_retryblob_size_max!Cr! (( ((#2 ( & ( pkcs11h_data_put.e$U**token_id&*is_public' *application(*label)*user_data**mask_prompt+*blob, *blob_size-$class&/ck_true*0ck_false*1attrs*3handle <rv=mutex_locked@sessionBop_succeedClogin_retryDCr! ** **#2 !(CK_BBOOL &H* pkcs11h_data_delp$'U6,6,token_id;,is_public J,applicationY,label^,user_datac,mask_promptmutex_lockedsessionop_succeedlogin_retryhandle rvr! @,E, O,T,#pkcs11h_data_freeDataIdList,(a)U,p-data_id_list+_id,-(3)(+)(+)x,:k-pkcs11h_data_id_list_t  pkcs11h_data_id_list_s k-next,#application-#label-# -,pkcs11h_data_enumDataObjectsUp).U//token_idP/is_publicQ /user_dataR/mask_promptS/p_data_id_listTmutex_lockedWsessionYdata_id_list,Zrv[op_succeed]login_retry^+-++-++-class&filter/objects objects_found&i&+H-+5-+5-entry,attrs/C r!# k-/ & /  &/ &#_pkcs11h_session_login80/////&_pkcs11h_session_validatej080&_pkcs11h_session_release0j0m! &0_pkcs11h_session_getSessionByTokenId000& 00 1 _pkcs11h_session_findObjectsS10001 1 _pkcs11h_session_freeObjectAttributes1S1X1& _pkcs11h_session_getObjectAttributes11111 12_pkcs11h_log,212 $,2_pkcs11h_threading_mutexReleasei212,2_pkcs11h_threading_mutexLock2i2 2 22_pkcs11h_mem_free22 2 22_pkcs11h_mem_malloc322} !3pkcs11h_getMessage&3Q33 Q3 [3__assert3V3`3 3strlen!33 3memmove##3 5pkcs11h-serialization.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-serialization.c -W0,-xp.XAKgoyLP6XaOUSD.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLP6XaOUSD.;backend;raw;cd;DBG_GEN 5.3.0}pkcs11h_token_serializeTokenIdE.J1UszB maxC token_idDsourcesFrvGnHe&I/00/0/0ta000<00<00[00n00n00twunsigned longCK_RVchar unsignedsize_tlong ,  !=  N  _  !p  pkcs11h_token_id_sddisplay#manufacturerID,#model=#serialNumberN#label_#ppkcs11h_token_id_t    & intpkcs11h_token_deserializeTokenIdP1B4UYYp_token_idhsz p#s#targetsmtoken_idp1_sze&rv232323lp2 ^ c  ~ pkcs11h_certificate_serializeCertificateId(P4\6UOOsz% max& `certificate_id'rv)saved_max*n+_max,  g unsigned chargxCK_BYTE_PTRpkcs11h_certificate_id_s<token_id#displayNameT#attrCKA_ID}#attrCKA_ID_size#certificate_blobx#certificate_blob_size#<pkcs11h_certificate_id_t Apkcs11h_certificate_deserializeCertificateIdo`68U/4p_certificate_idmCszn certificate_idAprvqpr_szs< / 9 > /_pkcs11h_certificate_newCertificateIdHp _pkcs11h_token_newTokenIdpkcs11h_token_freeTokenId     _pkcs11h_util_unescapeStringG   L Q  ` e _pkcs11h_util_escapeString G V [ j   g _pkcs11h_util_binaryToHex     x    _pkcs11h_util_hexToBinaryV    V [ ` j o _pkcs11h_mem_strdup e t void   _pkcs11h_mem_free    _pkcs11h_mem_malloc+    0 5 _pkcs11h_loga + : pkcs11h_certificate_freeCertificateId a   pkcs11h_getMessage     __assert   &  strrchr4  & 4 strchr] 9 & ] strncpy b   strlen $pkcs11h-openssl.c /var/tmp/pkcs11-helper-1.09/lib /opt/solstudio12.2/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 pkcs11h-openssl.c -W0,-xp.XAKgoyLQ6XaOUaD.Xa;g;P;R=Sun C 5.11 SunOS_i386 145355-01 2010/10/11;G=.XAKgoyLQ6XaOUaD.;backend;raw;cd;DBG_GEN 5.3.0ڃ__pkcs11h_openssl_get_openssl_session89U|rsasession|intPKCS11H_BOOLunsigned charlongasn1_string_stt length# type# data# flags# &ASN1_INTEGERtchar asn1_object_st sn# ln# nid# length# data# flags#ASN1_OBJECTASN1_BOOLEAN&ASN1_STRING0&ASN1_ENUMERATEDG&ASN1_BIT_STRINGb&ASN1_OCTET_STRING}&ASN1_PRINTABLESTRING&ASN1_T61STRING&ASN1_IA5STRING&ASN1_GENERALSTRING&ASN1_BMPSTRING &ASN1_UNIVERSALSTRING&&ASN1_UTCTIMEF&ASN1_GENERALIZEDTIME^&ASN1_VISIBLESTRING~&ASN1_UTF8STRING ASN1_VALUE_stASN1_VALUE l ptr# boolean# asn1_stringB# object# integer# enumerated]# bit_stringx# octet_string# printablestring# t61string# ia5string# generalstring# bmpstring!# universalstringA# utctimeY# generalizedtimey# visiblestring# utf8string# setB# sequenceB# asn1_value#asn1_type_st type# value#lASN1_TYPEX509_algor_st algorithm# parameter#X509_ALGOR    $ D).stack_st num# data# sorted# num_alloc# compD#ISTACKbuf_mem_st  length# data# max#BUF_MEMunsigned longX509_name_stb entries# modified# bytes# hash# X509_NAMEb&ASN1_TIMEwX509_val_st notBefore# notAfter#X509_VAL  rsa_stX 7 pad# version# meth # engine( # n # e # d # p # q # dmp1 #$ dmq1 #( iqmp #, ex_data #0 references#8 flags#< _method_mod_nH #@ _method_mod_pH #D _method_mod_qH #H bignum_data#L blindingp #P mt_blindingp #TRSA7 k A F p |         rsa_meth_st8 name# rsa_pub_enck # rsa_pub_decw # rsa_priv_enc # rsa_priv_dec # rsa_mod_exp # bn_mod_exp # init # finish # flags#$ app_data#( rsa_sign #, rsa_verify #0 rsa_keygen #4 RSA_METHOD  engine_st ENGINE bignum_st d- # top# dmax# neg# flags#2 BIGNUM crypto_ex_data_st sk# dummy# CRYPTO_EX_DATAbn_mont_ctx_stH 6 ri# RR # N # Ni #, n0#@ flags#D BN_MONT_CTX6 bn_blinding_stM BN_BLINDING^  z  dsa_stD  pad# version# write_params# p # q # g # pub_key # priv_key # kinv # r #$ flags#( method_mont_pH #, references#0 ex_data #4 methQ#< engine( #@ DSADSA_SIG_st  r # s #DSA_SIG    ,8Ddsa_method0 ; name # dsa_do_sign# dsa_sign_setup# dsa_do_verify# dsa_mod_exp# bn_mod_exp# init'# finish3# flags# app_data#$ dsa_paramgen?#( dsa_keygenK#,PDSA_METHOD ;L [dh_stL w pad# version# p # g # length# pub_key # priv_key # flags# method_mont_pH # q #$ j #( seed#, seedlen#0 counter #4 references#8 ex_data #< meth#D engine( #HeDHw dh_method$  name`# generate_key# compute_key# bn_mod_exp# init# finish# flags# app_data# generate_params# DH_METHOD e ec_key_st  ptr# rsau # dsaV# dh# ec#evp_pkey_stu type# save_type# references# pkey# save_parameters# attributes#EVP_PKEYuX509_pubkey_st  algor# public_keyx# pkey#X509_PUBKEYASN1_ENCODING_st ' enc# len# modified#ASN1_ENCODINGx509_cinf_st4 version# serialNumber# signature# issuerr# validity# subjectr# key# issuerUIDx# subjectUIDx# extensions#$ enc'#(;X509_CINF AUTHORITY_KEYID_st X509_POLICY_CACHE_st6X509_POLICY_CACHEM{x509_cert_aux_st trust# reject# alias# keyid# other#{X509_CERT_AUXx509_st\3 cert_info# sig_alg# signaturex# valid# references# name# ex_data # ex_pathlen# ex_pcpathlen#$ ex_flags#( ex_kusage#, ex_xkusage#0 ex_nscert#4 skid#8 akid1#< policy_cachee#@ sha1_hashj#D aux#XX5093 TA C pkcs11h_certificate_sYqpkcs11h_certificate_t vpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_sPw reference_count# initialized# x509># smart_rsa # orig_finishT#D certificatev#H cleanup_hook#Lwpkcs11h_openssl_session_t 7 __pkcs11h_openssl_get_pkcs11h_certificate9h:Uvrsasession| 7 __pkcs11h_openssl_decp:,=Uflen from toA rsapaddingcertificatevsession_lockedmechrv'tlen? CK_MECHANISM_TYPECK_RVunsigned3size_t__pkcs11h_openssl_enc!@=?U/flen4from toA rsapadding certificatev#session_locked$rv'%tlen?& /__pkcs11h_openssl_finishl?m@UA rsakopenssl_session|mpkcs11h_openssl_getX509p@wBU>iicertificatecertificate_blobcertificate_blob_size?x509>rv'd2i1x v ns__pkcs11_openssl_d2i_tpkcs11h_openssl_createSessionBCU|++certificatedef5openssl_session|ok v 0pkcs11h_openssl_getCleanupHookCLDUopenssl_session |pkcs11h_openssl_setCleanupHook'PDDUopenssl_session%cleanup& | pkcs11h_openssl_freeSession0D:FUPPopenssl_session/ |pkcs11h_openssl_session_getRSAW@FIUA openssl_sessionVx509>XrsaA YpubkeyZok[ |pkcs11h_openssl_session_getX509 IJU>openssl_sessionx509>ok |void  _pkcs11h_mem_free'   3_pkcs11h_mem_malloc'  3   _pkcs11h_logA    q ' K P 3 3 d pkcs11h_certificate_decryptAny' A F U Z _ i q '  3  d pkcs11h_certificate_signAny')!      qpkcs11h_certificate_releaseSession'd!)! qpkcs11h_certificate_lockSession'!d! q  d pkcs11h_certificate_getCertificateBlob'!!!! pkcs11h_certificate_s!pkcs11h_certificate_freeCertificate'C""  H"pkcs11h_getMessageM"x"C"X509_get_pubkey"x"> ""d2i_X509>"""X509_free""X509_new>X509_dup>&#> &#RSA_get_ex_data0#]#+#RSA_set_ex_data#u 0# #RSA_set_method#u # #RSA_get_default_method#RSA_free#u #RSA_size#$$EVP_PKEY_freeE$#$EVP_PKEY_get1_RSAu j$#$OpenSSL_add_all_digests $ $__assert$$$ $memmove0#0#$3 /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/isopkcs11h-mem.cpkcs11.hstdio_iso.h44=4 5 G5 Q5 Y55 555 556 6 (6 /6 @6a66 666 6 ?7 I7 Q7 [7c7 ~7 77 7 777 i /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.hstdio_iso.hpkcs11.h777 8!8/8 @8a8r8 888 8 8 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.h9!9!9 &9 -9 @9I9I9 P9 `99999 9  : :  :&: ?: D:S: b::: : ; ?; g; ; ; ; << '< .<@< P<q<x<x<< < #= .= >= @=F= _= d=== = == === = = > >;> s>> >>> >>> >> > >? E?M? [? b? j? x? ? ? ? ?? ???? ?? @!@!@&@ -@ @@a@h@ w@w@@ @ @ A  A AA A 3A 8AIA ZAjA sA{A A AA AAAAB KB B B B B BB B B BBB B BC C C.C @CaChC oC vC }C }CC C D  D D #D *D 0D6D O`O gO lOsO yO OOO O O  /var/tmp/pkcs11-helper-1.09/lib/usr/include/iso../include/pkcs11-helper-1.0pkcs11h-util.cstdio_iso.hpkcs11.hOP>7P oP xP P P P P P P~PPQQ &Q [Q Q Q Q Q Q R "R G~S_ fu    ljyЉ~   - 09 ? FN Y j xS~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.hPw~   - 4 a h Ќ    DK   ̍ Ѝ׍  0W^ e    . = ``    ֏ ܏ 5  ǐ ؐ  ' ,3A I LF_>p w |   ƑΑ ܑ   0W     > p  ӓӓ ړ  " ) 0 k    ͔   1 WW d      ϕ     ) 8 C J Lrr y   ԖԖ    $ +aa g    " $/ 6 8?uu {  ˜ ɘ  bbj     ԙ  ( d pz   Ӛ  # 7 >tt z ߛ  Ca h o v }   7 o     , 4 ;GV o t|     h l s x\'  ğΟ ן ܟ U \  Р ֠ ؠ ߠ V0 ,, > HP X `h p |  ¡Ρ ء     FF M`h l~x  բբ ۢ 1o     / = P [ l v     + o  ߥ    @@ F `  ˧  G    Ψ Ш  ! $+aa g  ߩ # FF N Y j t   تت ߪ   W  ӫ  1 8 w      '-@d k   ' _      + 07tt z    ? w   < < D N { ıı ʱ   K  Dz  7     ˳ г׳  0T [  ߴ  O  ܵ ܵ     'dd j     7 o  ߷ 4 4 ? ^^ w |     v    / 4 8vx  йй ֹ   " c  ߺ  O    λλ      $ ,vl     v  @@ F `     ߽ # [     ʾ Ծ ݾ  " (L Ts x        ,C JR ] n x       A{    ![ d p   K    **H LS      [     # -I P Wl s z       l    & 7 > @`go        O     # *I L S      $+3 :B S Z      / s     " $ + j ls{       " 3 :pp v      88T \ co v        7!= @L U \ e l s{      *1 8@ NV ^   ~  ** 0 @gn u |        ") B HQ ] c jvs~{  x"~5{>~JQ W cj             "]+~7*? H OX _ fn t } |    17 w        )y1 PP W `     S       . 08 I S^ u       0fm t{  7 ff n x       |~  #*5 < h pw    0 4;C     F~ ::B P W`~l{       ! / 6 8A G NiW~cql~x5      " 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@IP _ q       " /= ee r   44 My     M U ]    q! (H O V ~~    Fk    "* 8@ DX l    ''FF f     . MM `li~u     7B[zz  ~~   $+ JJ ^       A`` t      18 @a       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.h4< L \ l |           , < L \ l |           , < L \ l |           , < L \ l |           , < L \ l |           , < L \ l |       " )0 7 VV [ w |        ; @ G c h o            ! 2 9 A R Y a r y     2 9 XXg o ~     4EO Z yy  `$   11 A R a | |    ** 1 @am  # 5 < Pq   1o        A     !0Q     ) 0 @a   * 9 @ Pq      A    O         b  f f        j  x                    "  ,  4 X  ` p               4  d d  n           ~          + 9  @ H  _  f k          $ +  2  9  @  G  N                $ + M T [j r ~       # 8 EJX g u    ~  % - D K S j q   ,, SZq  ~~     ~~! ) .Edd k       '8 IQ Wq`~h    0 > Ol               88 ? Pq          0 D IPq        $ )0Q X`     *> C K PrY~ai     = /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      G vv         BB H `         O   /        ` dk rz    U0   3:B S Zh p ~        '               ! W! ! ! " >" " "" "" " "" @# D#K# R#Z# b# ## ### #Z#+## # #$ $ $N$N$ T$ p$$$ $ $ $ $ $ $ C% {% % %&&9& @&\& d& k&w&& && && ' 8'8' ?'^'f' h'Vt'2|' ' '' ' ''' ' (!('( g( ((( ( ( ( ( )  ) ) +)v3) R)R) Y) p))) ) ) ) ) ) ) C* {* ** ** *+ + +++ 2+P+ W+ ^+ + ++ ++j, l,, , , , , , , ,, , ,  - - '- 5-GH-=O- V-^- l-t- |- -- --- --- . ..  . './. =. D.L. Z. a... .  /var/tmp/pkcs11-helper-1.09/lib../include/pkcs11-helper-1.0/usr/include/isopkcs11h-serialization.cpkcs11.hstdio_iso.hpkcs11h-core.hpkcs11h-certificate.h.../ K/V/ a/ l/ w/ ~/// / /  0 0 0t00<0 G0 N0 T0[0 n0 z00 0 0 0s000 09191 ?1 P1t1{1 1 1 1 1 2 .2.2 82S2 X2^2 w2 |22 2 2 2 2 2 2 2 2 22 2 2 3  33 43 <3H3 O3 T3^33 33R353 3 3 33 33 31414 74 P4t4{4 4 4 44 5 J5J5 R5 a5 k55 55 5 5 5 5556  6K6K6 Q6 `666 6 6 6 6 7 7 H7H7c7 h7n7 7 77 7 77 77 78 T8 X8a8 h8 o8w8 8 88 888 8  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.h89K9\9 9 9 999 : W: `: p::: : : : : : 3; k; ;; ; ; ; ; ; ; ; ; ;t;; ; < < #< B<B< m< < <<< < <== != @=d=u= |= == = +> ^>^> f> m> t>> > > > >> > )? ,?3?;? I? P??? ? ??? @@ @  @ 1@?@ ^@^@ e@ p@@@ @ @ @ @ @ AA "A AA HA PA mA tAA A A AA A A A BBB B %B ,BfBfB lB BBB B BB BB C  C CC -C 9C EC QC ]C iC sC |C C CC CCC C CD;D DD PDqDD D DDE WE EE E E E EE E E E E FF5F5F @FaFhF oF vF }F F F +G NGNGgG G GG G GG G GH 4H 8HKH ]H jH yH H HH H H HH H HH H H I I I  IAIHI OI I III I IJ 7J  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' ID 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 .? < ' 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 '.? < ' 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' ID I !I/ ' D  . : ;@ ' ID I: ; 4I : ; .?  : ;@ ' ID I.?  : ;@ ' D .? < ' ID .? < ' D .? < ' ID .? < ' D .? < ' ID oe_pkcs11h_mem_malloc1_pkcs11h_mem_free}_pkcs11h_mem_strdup_pkcs11h_mem_duplicateEec_g_pkcs11h_sys_enginepkcs11h_engine_setSystemHA !(c"_g_pkcs11h_crypto_engine"pkcs11h_engine_setCryptob1_pkcs11h_threading_sleepI_pkcs11h_threading_mutexInit_pkcs11h_threading_mutexLock]_pkcs11h_threading_mutexRelease_pkcs11h_threading_mutexFreeY_pkcs1h_threading_mutexLockAll_pkcs1h_threading_mutexReleaseAll_pkcs11h_threading_condSignal _pkcs11h_threading_condInitP _pkcs11h_threading_condWait _pkcs11h_threading_condFree0 _pkcs11h_threading_threadStart _pkcs11h_threading_threadJoin/C_pkcs11h_util_fixupFixedString<_pkcs11h_util_hexToBinary_pkcs11h_util_binaryToHex_pkcs11h_util_escapeString_pkcs11h_util_unescapeStringDK4_pkcs11h_session_getSlotList _pkcs11h_session_getObjectAttributes'_pkcs11h_session_freeObjectAttributes'_pkcs11h_session_findObjects)_pkcs11h_session_getSessionByTokenId*_pkcs11h_session_releaseN+_pkcs11h_session_reseti-_pkcs11h_session_getObjectById._pkcs11h_session_validate/__pkcs11h_session_touchc/_pkcs11h_session_login)1_pkcs11h_session_logout:1pkcs11h_token_freeTokenIdpkcs11h_token_duplicateTokenId]pkcs11h_token_sameTokenId_pkcs11h_token_getTokenId_pkcs11h_token_newTokenIdDpkcs11h_token_logoutM(pkcs11h_token_loginQ)pkcs11h_token_ensureAccess3*pkcs11h_token_freeTokenIdList/+pkcs11h_token_enumTokenIdsޱ?Q_pkcs11h_certificate_isBetterCertificate_pkcs11h_certificate_newCertificateIdL,_pkcs11h_certificate_validateSession,_pkcs11h_certificate_resetSession1pkcs11h_certificate_freeCertificateId]1pkcs11h_certificate_duplicateCertificateId1pkcs11h_certificate_setCertificateIdCertificateBlob2pkcs11h_certificate_freeCertificate2pkcs11h_certificate_lockSessionX3pkcs11h_certificate_releaseSession3pkcs11h_certificate_sign4pkcs11h_certificate_signRecover5pkcs11h_certificate_decrypt6pkcs11h_certificate_unwrap7pkcs11h_certificate_signAny8pkcs11h_certificate_decryptAny9pkcs11h_certificate_create:pkcs11h_certificate_getPromptMask/;pkcs11h_certificate_setPromptMask;pkcs11h_certificate_getUserData;pkcs11h_certificate_setUserDatad<pkcs11h_certificate_getCertificateId<pkcs11h_certificate_getCertificateBlobI>pkcs11h_certificate_ensureCertificateAccessM?pkcs11h_certificate_ensureKeyAccess@_pkcs11h_certificate_enumSessionCertificatesDpkcs11h_certificate_freeCertificateIdListoEpkcs11h_certificate_enumTokenCertificateIdsFpkcs11h_certificate_enumCertificateIds)"_pkcs11h_slotevent_init.#_pkcs11h_slotevent_notify^#_pkcs11h_slotevent_terminate_force#_pkcs11h_slotevent_terminateN,@@*_g_pkcs11h_data_*_g_pkcs11h_loglevel*pkcs11h_getMessage*pkcs11h_getVersion*pkcs11h_getFeaturesE+pkcs11h_initialize+pkcs11h_terminate,pkcs11h_setLogLevel-pkcs11h_setForkMode[-pkcs11h_getLogLevel-pkcs11h_setLogHook-pkcs11h_setSlotEventHookI.pkcs11h_setPINPromptHook.pkcs11h_setTokenPromptHook/pkcs11h_setPINCachePeriodk/pkcs11h_setMaxLoginRetries/pkcs11h_setProtectedAuthentication 0pkcs11h_addProvider3pkcs11h_removeProvider4pkcs11h_forkFixup5pkcs11h_plugAndPlay5pkcs11h_logout:6_pkcs11h_logxm3&pkcs11h_data_get(pkcs11h_data_put*pkcs11h_data_delh,pkcs11h_data_freeDataIdListu-pkcs11h_data_enumDataObjectsP pkcs11h_token_serializeTokenId-pkcs11h_token_deserializeTokenId~pkcs11h_certificate_serializeCertificateIdepkcs11h_certificate_deserializeCertificateId$pkcs11h_openssl_getX509pkcs11h_openssl_createSession:pkcs11h_openssl_getCleanupHookpkcs11h_openssl_setCleanupHookpkcs11h_openssl_freeSessionUpkcs11h_openssl_session_getRSApkcs11h_openssl_session_getX509#eCK_RVsize_tetime_t1suseconds_tCtimevalsize_tpkcs11h_sys_engine_sEpkcs11h_engine_system_tCK_RV!A !(size_tasn1_string_stASN1_INTEGERDasn1_object_stASN1_OBJECTASN1_BOOLEANASN1_STRINGASN1_ENUMERATEDASN1_BIT_STRING#ASN1_OCTET_STRING@ASN1_PRINTABLESTRING`ASN1_T61STRINGzASN1_IA5STRINGASN1_GENERALSTRINGASN1_BMPSTRINGASN1_UNIVERSALSTRINGASN1_UTCTIMEASN1_GENERALIZEDTIME$ASN1_VISIBLESTRINGBASN1_UTF8STRINGmASN1_VALUEasn1_type_stBASN1_TYPEWX509_algor_stX509_ALGORstack_stG STACKX buf_mem_st BUF_MEM X509_name_st X509_NAME ASN1_TIME2 X509_val_sti X509_VAL RSA rsa_meth_st RSA_METHOD ENGINE bignum_st'BIGNUM9crypto_ex_data_stlCRYPTO_EX_DATAbn_mont_ctx_stBN_MONT_CTXBN_BLINDING rsa_st-DSA<DSA_SIG_stcDSA_SIGdsa_methodDSA_METHOD4dsa_stDH}dh_method+DH_METHOD dh_st[evp_pkey_stEVP_PKEY/X509_pubkey_sttX509_PUBKEYASN1_ENCODING_stASN1_ENCODINGx509_cinf_stX509_CINFX509_POLICY_CACHE!x509_cert_aux_stX509_CERT_AUXx509_stX509__pkcs11_openssl_d2i_ttmPKCS11H_BOOL^pkcs11h_crypto_engine_spkcs11h_engine_crypto_tggnutls_x509_crt_tgnutls_datum_ttime_t"CK_RV6$b1uint16_tuint8_tuint32_tupad64_t(_pthread_mutex_pkcs11h_mutex_t%PKCS11H_BOOL8__pkcs11h_threading_mutex_entry_s__pkcs11h_threading_mutex_entry_tCK_RVL _pthread_cond pthread_cond_t pthread_mutex_t  time_t suseconds_t. timeval] timespec _pkcs11h_thread_start_t ___pkcs11h_thread_data_t ! sigset_t_pthread_condattr_pthread_mutexattr__pthread_attr#/C*size_tCK_RV DK4dCK_RVPKCS11H_BOOL_CK_VERSION<CK_C_InitializehCK_C_FinalizeCK_FLAGS_CK_INFOHCK_C_GetInfo{CK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotList _CK_SLOT_INFOCK_C_GetSlotInfo_CK_TOKEN_INFOCK_C_GetTokenInfoCK_MECHANISM_TYPE?CK_C_GetMechanismList[_CK_MECHANISM_INFOCK_C_GetMechanismInfo CK_C_InitToken. CK_SESSION_HANDLEf CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION CK_NOTIFY* CK_C_OpenSessionW CK_C_CloseSession CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFO* CK_C_GetSessionInfod CK_C_GetOperationState CK_OBJECT_HANDLE CK_C_SetOperationState CK_USER_TYPE CK_C_Login> CK_C_LogoutP CK_ATTRIBUTE_TYPEh _CK_ATTRIBUTE CK_C_CreateObject CK_C_CopyObjectO CK_C_DestroyObject CK_C_GetObjectSize CK_C_GetAttributeValueCK_C_SetAttributeValueECK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISMECK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinal4CK_C_DecryptInituCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInit^CK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinal/CK_C_SignInitmCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitMCK_C_SignRecoverCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdate.CK_C_VerifyFinaleCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate8CK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdateCK_C_GenerateKeyaCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey;CK_C_DeriveKeypCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatus CK_C_CancelFunctionCCK_C_WaitForSlotEvent__CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR_pkcs11h_thread_t_pkcs11h_provider_sp_pkcs11h_provider_t` CK_BBOOL~ CK_ULONG_PTR CK_SLOT_ID_PTR CK_ULONG!pkcs11h_token_id_sG"pkcs11h_token_id_t`"time_t"CK_BYTE_PTR"size_t"pkcs11h_certificate_id_su#pkcs11h_certificate_id_t#pkcs11h_certificate_id_list_sm"pkcs11h_certificate_id_list_t#uint16_t$uint8_t$$$uint32_t$I%upad64_tX%%_pthread_mutex-&_pkcs11h_mutex_tD&_pkcs11h_session_sZ!_pkcs11h_session_tc'CK_ATTRIBUTE_PTRU-CK_TOKEN_INFOj.CK_OBJECT_CLASS.CK_ATTRIBUTE1CK_UTF8CHAR_PTR 1CK_RVQpkcs11h_token_id_spkcs11h_token_id_tPKCS11H_BOOLCK_FLAGS_CK_VERSION_CK_TOKEN_INFOCK_TOKEN_INFO_PTROCK_C_Initialize{CK_C_Finalize_CK_INFOL CK_C_GetInfo CK_C_GetFunctionList CK_SLOT_ID CK_C_GetSlotList _CK_SLOT_INFO CK_C_GetSlotInfo CK_C_GetTokenInfo CK_MECHANISM_TYPE8 CK_C_GetMechanismListT _CK_MECHANISM_INFO CK_C_GetMechanismInfo CK_C_InitToken' CK_SESSION_HANDLE_ CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION CK_NOTIFY# CK_C_OpenSessionP CK_C_CloseSession~ CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFO#CK_C_GetSessionInfo]CK_C_GetOperationStatezCK_OBJECT_HANDLECK_C_SetOperationStateCK_USER_TYPECK_C_Login7CK_C_LogoutICK_ATTRIBUTE_TYPEa_CK_ATTRIBUTECK_C_CreateObjectCK_C_CopyObjectHCK_C_DestroyObjectCK_C_GetObjectSizeCK_C_GetAttributeValueCK_C_SetAttributeValue>CK_C_FindObjectsInit~CK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISM>CK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdateCK_C_EncryptFinal-CK_C_DecryptInitnCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCK_C_DigestInitWCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinal(CK_C_SignInitfCK_C_SignCK_C_SignUpdateCK_C_SignFinalCK_C_SignRecoverInitFCK_C_SignRecover}CK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdate'CK_C_VerifyFinal^CK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate1CK_C_DecryptDigestUpdatezCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate CK_C_GenerateKeyZCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey4CK_C_DeriveKeyiCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusCK_C_CancelFunction<CK_C_WaitForSlotEventX_CK_FUNCTION_LIST!CK_FUNCTION_LIST_PTR!_pkcs11h_thread_t!_pkcs11h_provider_s_pkcs11h_provider_tT#time_t#CK_BYTE_PTR#size_t#pkcs11h_certificate_id_si$pkcs11h_certificate_id_t$pkcs11h_certificate_id_list_sa#pkcs11h_certificate_id_list_t$uint16_t$uint8_t%%%uint32_t%=&upad64_tL&&_pthread_mutex!'_pkcs11h_mutex_t8'_pkcs11h_session_s_pkcs11h_session_tB)CK_ULONG*pkcs11h_token_id_list_s*pkcs11h_token_id_list_t@-CK_SLOT_ID_PTRU-CK_TOKEN_INFO ޱ?QPKCS11H_BOOLsize_t time_tCK_RVpkcs11h_token_id_s}pkcs11h_token_id_tCK_BYTE_PTRpkcs11h_certificate_id_spkcs11h_certificate_id_tJ_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_SLOT_ID% CK_C_GetSlotList^ _CK_SLOT_INFO CK_C_GetSlotInfom _CK_TOKEN_INFO> CK_C_GetTokenInfoV CK_MECHANISM_TYPE CK_C_GetMechanismList _CK_MECHANISM_INFO' CK_C_GetMechanismInfoh CK_C_InitToken} CK_SESSION_HANDLE CK_C_InitPIN CK_C_SetPINCK_NOTIFICATION:CK_NOTIFYyCK_C_OpenSessionCK_C_CloseSessionCK_C_CloseAllSessionsCK_STATE_CK_SESSION_INFOyCK_C_GetSessionInfoCK_C_GetOperationStateCK_OBJECT_HANDLECK_C_SetOperationState.CK_USER_TYPEfCK_C_LoginCK_C_LogoutCK_ATTRIBUTE_TYPE_CK_ATTRIBUTE+CK_C_CreateObjectmCK_C_CopyObjectCK_C_DestroyObjectCK_C_GetObjectSizeCK_C_GetAttributeValueWCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISMCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdateKCK_C_EncryptFinalCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdate:CK_C_DecryptFinalmCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyGCK_C_DigestFinal~CK_C_SignInitCK_C_SignCK_C_SignUpdate"CK_C_SignFinalWCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitCK_C_VerifyECK_C_VerifyUpdate}CK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover>CK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate`CK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKeyFCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandom%CK_C_GetFunctionStatusXCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LIST#CK_FUNCTION_LIST_PTR+#_pkcs11h_thread_tC#_pkcs11h_provider_s_pkcs11h_provider_t$pkcs11h_certificate_id_list_s$pkcs11h_certificate_id_list_t#%uint16_t2%uint8_t@%%&uint32_t#&w&upad64_t&&_pthread_mutex['_pkcs11h_mutex_tr'_pkcs11h_session_s_pkcs11h_session_t(pkcs11h_certificate_sX)pkcs11h_certificate_ty)CK_OBJECT_CLASS)CK_ATTRIBUTE)CK_ULONG8,CK_BBOOL/__pkcs11h_private_op_e0CK_MECHANISM0CK_KEY_TYPEqICK_SLOT_ID_PTRICK_TOKEN_INFOuOtm);size_t<PKCS11H_BOOL_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS:_CK_INFOCK_C_GetInfoCK_C_GetFunctionList#CK_SLOT_ID^CK_C_GetSlotList_CK_SLOT_INFO:CK_C_GetSlotInfo_CK_TOKEN_INFOw CK_C_GetTokenInfo CK_MECHANISM_TYPE CK_C_GetMechanismList _CK_MECHANISM_INFO` CK_C_GetMechanismInfo CK_C_InitToken CK_SESSION_HANDLE CK_C_InitPIN0 CK_C_SetPINB CK_NOTIFICATIONx CK_NOTIFY CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions. CK_STATE= _CK_SESSION_INFO CK_C_GetSessionInfo CK_C_GetOperationState CK_OBJECT_HANDLEO CK_C_SetOperationStatel CK_USER_TYPE CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTEiCK_C_CreateObjectCK_C_CopyObjectCK_C_DestroyObjectCK_C_GetObjectSizeSCK_C_GetAttributeValueCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjects?CK_C_FindObjectsFinal[_CK_MECHANISMCK_C_EncryptInitCK_C_EncryptPCK_C_EncryptUpdateCK_C_EncryptFinalCK_C_DecryptInitCK_C_Decrypt?CK_C_DecryptUpdatexCK_C_DecryptFinalCK_C_DigestInitCK_C_DigestCK_C_DigestUpdatePCK_C_DigestKeyCK_C_DigestFinalCK_C_SignInitCK_C_Sign*CK_C_SignUpdate`CK_C_SignFinalCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitQCK_C_VerifyCK_C_VerifyUpdateCK_C_VerifyFinalCK_C_VerifyRecoverInit9CK_C_VerifyRecover|CK_C_DigestEncryptUpdateCK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateUCK_C_DecryptVerifyUpdateCK_C_GenerateKeyCK_C_GenerateKeyPair8CK_C_WrapKeyCK_C_UnwrapKeyCK_C_DeriveKeyCK_C_SeedRandom3CK_C_GenerateRandomcCK_C_GetFunctionStatusCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTN CK_FUNCTION_LIST_PTRi _pkcs11h_thread_t _pkcs11h_provider_s_pkcs11h_provider_t!CK_RV!CK_ULONG!CK_SLOT_ID_PTR "CK_TOKEN_INFO$uint8_t%%uint16_t4%%upad64_t%_pthread_cond&pthread_cond_t&&&uint32_t&;''_pthread_mutex(pthread_mutex_t&( ,@PKCS11H_BOOL _CK_VERSIONaCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOmCK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotList/_CK_SLOT_INFOCK_C_GetSlotInfo>_CK_TOKEN_INFOCK_C_GetTokenInfo'CK_MECHANISM_TYPEdCK_C_GetMechanismList_CK_MECHANISM_INFOCK_C_GetMechanismInfo>CK_C_InitTokenSCK_SESSION_HANDLECK_C_InitPINCK_C_SetPINCK_NOTIFICATION CK_NOTIFYO CK_C_OpenSession| CK_C_CloseSession CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFOO CK_C_GetSessionInfo CK_C_GetOperationState CK_OBJECT_HANDLE CK_C_SetOperationState CK_USER_TYPE< CK_C_Loginc CK_C_Logoutu CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObjectC CK_C_CopyObjectt CK_C_DestroyObject CK_C_GetObjectSize CK_C_GetAttributeValue- CK_C_SetAttributeValuej CK_C_FindObjectsInit CK_C_FindObjects CK_C_FindObjectsFinal _CK_MECHANISMjCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdate!CK_C_EncryptFinalYCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdateCK_C_DecryptFinalCCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKeyCK_C_DigestFinalTCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinal-CK_C_SignRecoverInitrCK_C_SignRecoverCK_C_VerifyInitCK_C_VerifyCK_C_VerifyUpdateSCK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecoverCK_C_DigestEncryptUpdate]CK_C_DecryptDigestUpdateCK_C_SignEncryptUpdateCK_C_DecryptVerifyUpdate6CK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKeyCK_C_UnwrapKey`CK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatus.CK_C_CancelFunctionhCK_C_WaitForSlotEvent_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR _pkcs11h_thread_t%_pkcs11h_provider_s_pkcs11h_provider_tpkcs11h_token_id_sm pkcs11h_token_id_t time_t CK_BYTE_PTR size_t pkcs11h_certificate_id_s!pkcs11h_certificate_id_t!pkcs11h_certificate_id_list_s pkcs11h_certificate_id_list_t"uint16_t*"uint8_t8"" #uint32_t#o#upad64_t~##_pthread_mutexS$_pkcs11h_mutex_tj$_pkcs11h_session_s_pkcs11h_session_t%va_list%pkcs11h_hook_log_t%pkcs11h_hook_slotevent_tO&pkcs11h_hook_token_prompt_t&pkcs11h_hook_pin_prompt_t&''.(_pthread_cond}(pthread_cond_t(pthread_mutex_t((_pkcs11h_cond_t(I)_pkcs11h_data_s**_pkcs11h_data_t*CK_RVK2pid_tr2CK_CREATEMUTEX2CK_DESTROYMUTEX2CK_LOCKMUTEX2CK_UNLOCKMUTEX3_CK_C_INITIALIZE_ARGS3CK_C_INITIALIZE_ARGS3CK_C_INITIALIZE_ARGS_PTR3CK_INFO >pkcs11h_crypto_engine_s xm3CK_RVPKCS11H_BOOL9_CK_VERSIONCK_C_InitializeCK_C_FinalizeCK_FLAGS_CK_INFOCK_C_GetInfoCK_C_GetFunctionListCK_SLOT_IDCK_C_GetSlotListM_CK_SLOT_INFOCK_C_GetSlotInfo\_CK_TOKEN_INFO-CK_C_GetTokenInfoECK_MECHANISM_TYPECK_C_GetMechanismList_CK_MECHANISM_INFO CK_C_GetMechanismInfo\ CK_C_InitTokenq CK_SESSION_HANDLE CK_C_InitPIN CK_C_SetPIN CK_NOTIFICATION. CK_NOTIFYm CK_C_OpenSession CK_C_CloseSession CK_C_CloseAllSessions CK_STATE _CK_SESSION_INFOm CK_C_GetSessionInfo CK_C_GetOperationState CK_OBJECT_HANDLE CK_C_SetOperationState" CK_USER_TYPEZ CK_C_Login CK_C_Logout CK_ATTRIBUTE_TYPE _CK_ATTRIBUTE CK_C_CreateObjecta CK_C_CopyObject CK_C_DestroyObject CK_C_GetObjectSize CK_C_GetAttributeValueKCK_C_SetAttributeValueCK_C_FindObjectsInitCK_C_FindObjectsCK_C_FindObjectsFinal_CK_MECHANISMCK_C_EncryptInitCK_C_EncryptCK_C_EncryptUpdate?CK_C_EncryptFinalwCK_C_DecryptInitCK_C_DecryptCK_C_DecryptUpdate.CK_C_DecryptFinalaCK_C_DigestInitCK_C_DigestCK_C_DigestUpdateCK_C_DigestKey;CK_C_DigestFinalrCK_C_SignInitCK_C_SignCK_C_SignUpdateCK_C_SignFinalKCK_C_SignRecoverInitCK_C_SignRecoverCK_C_VerifyInitCK_C_Verify9CK_C_VerifyUpdateqCK_C_VerifyFinalCK_C_VerifyRecoverInitCK_C_VerifyRecover2CK_C_DigestEncryptUpdate{CK_C_DecryptDigestUpdateCK_C_SignEncryptUpdate CK_C_DecryptVerifyUpdateTCK_C_GenerateKeyCK_C_GenerateKeyPairCK_C_WrapKey:CK_C_UnwrapKey~CK_C_DeriveKeyCK_C_SeedRandomCK_C_GenerateRandomCK_C_GetFunctionStatusLCK_C_CancelFunctionCK_C_WaitForSlotEvent_CK_FUNCTION_LISTCK_FUNCTION_LIST_PTR+_pkcs11h_thread_tC_pkcs11h_provider_s_pkcs11h_provider_t pkcs11h_token_id_sr!pkcs11h_token_id_t!time_t!CK_BYTE_PTR!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 $t$upad64_t$$_pthread_mutexX%_pkcs11h_mutex_to%_pkcs11h_session_s_pkcs11h_session_t&CK_OBJECT_CLASS&CK_ATTRIBUTE&CK_ULONG*CK_BBOOL-pkcs11h_data_id_list_s,pkcs11h_data_id_list_tP CK_RVsize_tppkcs11h_token_id_spkcs11h_token_id_t}CK_BYTE_PTRpkcs11h_certificate_id_sApkcs11h_certificate_id_t3$PKCS11H_BOOL&asn1_string_sttASN1_INTEGERasn1_object_stASN1_OBJECTASN1_BOOLEAN0ASN1_STRINGGASN1_ENUMERATEDbASN1_BIT_STRING}ASN1_OCTET_STRINGASN1_PRINTABLESTRINGASN1_T61STRINGASN1_IA5STRINGASN1_GENERALSTRING ASN1_BMPSTRING&ASN1_UNIVERSALSTRINGFASN1_UTCTIME^ASN1_GENERALIZEDTIME~ASN1_VISIBLESTRINGASN1_UTF8STRINGASN1_VALUElasn1_type_stASN1_TYPEX509_algor_stX509_ALGORIstack_stSTACKbuf_mem_stBUF_MEMX509_name_stbX509_NAMEwASN1_TIMEX509_val_stX509_VAL7 RSA rsa_meth_st RSA_METHOD ENGINE2 bignum_st BIGNUM crypto_ex_data_st CRYPTO_EX_DATA bn_mont_ctx_st6 BN_MONT_CTX^ BN_BLINDINGrsa_stDSADSA_SIG_stDSA_SIGPdsa_method;DSA_METHOD dsa_stwDHdh_methodDH_METHODedh_stevp_pkey_stuEVP_PKEYX509_pubkey_stX509_PUBKEYASN1_ENCODING_st'ASN1_ENCODING;x509_cinf_stX509_CINFMX509_POLICY_CACHE{x509_cert_aux_stX509_CERT_AUXx509_st3X509vpkcs11h_certificate_tpkcs11h_hook_openssl_cleanup_tpkcs11h_openssl_session_s|pkcs11h_openssl_session_tCK_MECHANISM_TYPE'CK_RV?size_tx__pkcs11_openssl_d2i_t>e__mytime__mysleep__mygettimeofdayA !(__pkcs11h_crypto_openssl_initialize__pkcs11h_crypto_openssl_uninitializeN__pkcs11h_crypto_openssl_certificate_get_expiration__pkcs11h_crypto_openssl_certificate_get_dn__pkcs11h_crypto_openssl_certificate_is_issueri__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_issuer*b1 ___pkcs11h_thread_startޱ?Q|__pkcs11h_certificate_loadCertificate)__pkcs11h_certificate_updateCertificateIdDescription*__pkcs11h_certificate_getKeyAttributes-__pkcs11h_certificate_doPrivateOperation^B__pkcs11h_certificate_splitCertificateIdListp)__pkcs11h_slotevent_checksumM__pkcs11h_slotevent_provider "__pkcs11h_slotevent_manager,@6__pkcs11h_hooks_default_logO7__pkcs11h_hooks_default_token_prompt7__pkcs11h_hooks_default_pin_prompt8__pkcs11h_threading_atfork_prepare8__pkcs11h_threading_atfork_parent"9__pkcs11h_threading_atfork_childT9__pkcs11h_forkFixup*xm3_pkcs11h_data_getObject$__pkcs11h_openssl_get_openssl_session__pkcs11h_openssl_get_pkcs11h_certificate__pkcs11h_openssl_decL__pkcs11h_openssl_enc9__pkcs11h_openssl_finishWA !(9_g_pkcs11h_crypto_engine_openssl4"_g_pkcs11h_crypto_engine_gnutls3b1__s_pkcs11h_threading_mutex_list/Ckx<x(ޱ?Q;*separatorT*unknown.hash.dynsym.dynstr.SUNW_version.SUNW_versym.rel.got.rel.data.rel.picdata.rel.plt.text.init.fini.rodata.rodata1.dynamic.bssf.bss.symtab.strtab.annotate.comment.debug_info.debug_line.debug_abbrev.debug_pubnames.debug_typenames.debug_funcnames.debug_varnames.shstrtab 44 "DD o`oxx%o"2 BH; B++HE BH+H+PR B++ V..[44aJJgJJmJJuJJK6~ll8?`I0~ |!oTLA8 }Kȭ IH1   '07070100024072000041ed0000000000000000000000024e69934600000000000000b500010002ffffffffffffffff0000001d00000000root/usr/local/lib/pkgconfig07070100024073000081a40000000000000000000000014e697e910000018d000000b500010002ffffffffffffffff0000003300000000root/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 07070100024070000081ed0000000000000000000000014e697e91000004be000000b500010002ffffffffffffffff0000002700000000root/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' 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!