Move OpenSC PKCS#11 specific constants into own include files. Change constants to contain OPENSC signature, as these constant are not provider independent.
Following: http://www.opensc-project.org/pipermail/opensc-devel/2007-December/010617.html Comments? svn diff -r 3435:3436 https://www.opensc-project.org/svn/opensc/branches/alonbl/rutoken-fixups --- Index: src/tools/pkcs11-tool.c =================================================================== --- src/tools/pkcs11-tool.c (revision 3435) +++ src/tools/pkcs11-tool.c (revision 3436) @@ -23,6 +23,7 @@ #endif #include <opensc/pkcs11.h> +#include <opensc/pkcs11-opensc.h> #include <compat_getpass.h> #include "util.h" @@ -3572,7 +3573,7 @@ { CKM_DSA_PARAMETER_GEN, "DSA-PARAMETER-GEN", NULL }, { CKM_DH_PKCS_PARAMETER_GEN,"DH-PKCS-PARAMETER-GEN", NULL }, { CKM_X9_42_DH_PARAMETER_GEN,"X9-42-DH-PARAMETER-GEN", NULL }, - { CKM_GOST,"GOST", NULL }, + { CKM_OPENSC_GOST, "GOST", NULL }, { NO_MECHANISM, NULL, NULL } }; Index: src/pkcs11/framework-pkcs15.c =================================================================== --- src/pkcs11/framework-pkcs15.c (revision 3435) +++ src/pkcs11/framework-pkcs15.c (revision 3436) @@ -2079,7 +2079,7 @@ case CKM_RSA_X_509: flags = SC_ALGORITHM_RSA_RAW; break; - case CKM_GOST: + case CKM_OPENSC_GOST: flags = SC_ALGORITHM_GOST; break; default: @@ -2160,7 +2160,7 @@ case CKM_RSA_X_509: flags |= SC_ALGORITHM_RSA_RAW; break; - case CKM_GOST: + case CKM_OPENSC_GOST: flags |= SC_ALGORITHM_GOST; default: return CKR_MECHANISM_INVALID; @@ -2834,7 +2834,7 @@ #endif mech_info.ulMinKeySize = 32; mech_info.ulMaxKeySize = 32; - mt = sc_pkcs11_new_fw_mechanism(CKM_GOST, + mt = sc_pkcs11_new_fw_mechanism(CKM_OPENSC_GOST, &mech_info, CKK_RSA, NULL); rc = sc_pkcs11_register_mechanism(p11card, mt); sc_debug(card->ctx, "register GOST!!! %d", rc); Index: src/pkcs11/pkcs11.h =================================================================== --- src/pkcs11/pkcs11.h (revision 3435) +++ src/pkcs11/pkcs11.h (revision 3436) @@ -358,11 +358,6 @@ #define CKK_TWOFISH (0x21) #define CKK_VENDOR_DEFINED ((unsigned long) (1 << 31)) -//rutoken: -#define CKK_GOST (CKK_VENDOR_DEFINED+1) -#define CKA_GOST CKA_VENDOR_DEFINED+1 -#define CKM_GOST CKM_VENDOR_DEFINED+1 - typedef unsigned long ck_certificate_type_t; #define CKC_X_509 (0) Index: src/pkcs11/sc-pkcs11.h =================================================================== --- src/pkcs11/sc-pkcs11.h (revision 3435) +++ src/pkcs11/sc-pkcs11.h (revision 3436) @@ -33,6 +33,7 @@ #define CRYPTOKI_EXPORTS #include <pkcs11.h> +#include <pkcs11-opensc.h> #ifdef __cplusplus extern "C" { Index: src/pkcs11/Makefile.am =================================================================== --- src/pkcs11/Makefile.am (revision 3435) +++ src/pkcs11/Makefile.am (revision 3436) @@ -5,7 +5,7 @@ EXTRA_DIST = Makefile.mak dist_noinst_SCRIPTS = opensc_pkcs11_install.js -openscinclude_HEADERS = pkcs11.h +openscinclude_HEADERS = pkcs11.h pkcs11-opensc.h lib_LTLIBRARIES = opensc-pkcs11.la pkcs11-spy.la onepin-opensc-pkcs11.la noinst_LTLIBRARIES = libpkcs11.la Index: src/pkcs11/pkcs11-opensc.h =================================================================== --- src/pkcs11/pkcs11-opensc.h (revision 0) +++ src/pkcs11/pkcs11-opensc.h (revision 3436) @@ -0,0 +1,10 @@ +#ifndef PKCS11_OPENSC_H +#define PKCS11_OPENSC_H + +/* OpenSC specific extensions */ + +#define CKK_OPENSC_GOST (CKK_VENDOR_DEFINED+1) +#define CKA_OPENSC_GOST (CKA_VENDOR_DEFINED+1) +#define CKM_OPENSC_GOST (CKM_VENDOR_DEFINED+1) + +#endif Index: src/include/opensc/Makefile.am =================================================================== --- src/include/opensc/Makefile.am (revision 3435) +++ src/include/opensc/Makefile.am (revision 3436) @@ -14,6 +14,7 @@ @$(LN_S) $(top_srcdir)/src/libopensc/types.h types.h @$(LN_S) $(top_srcdir)/src/libopensc/ui.h ui.h @$(LN_S) $(top_srcdir)/src/pkcs11/pkcs11.h pkcs11.h + @$(LN_S) $(top_srcdir)/src/pkcs11/pkcs11-opensc.h pkcs11-opensc.h @$(LN_S) $(top_srcdir)/src/pkcs15init/keycache.h keycache.h @$(LN_S) $(top_srcdir)/src/pkcs15init/pkcs15-init.h pkcs15-init.h @$(LN_S) $(top_srcdir)/src/scconf/scconf.h scconf.h _______________________________________________ opensc-devel mailing list opensc-devel@lists.opensc-project.org http://www.opensc-project.org/mailman/listinfo/opensc-devel