On 05/04/2015 04:55 PM, Jakub Jelen wrote:
Hi all,
I went through recent problems in opencryptoki on Fedora and found out
that there was quite enough undefined symbols that prevented to
dynamically load particular modules or even start pkcsconf. More info
can be found in this bugzilla [1]. We were using version 3.2 but
patches are rebased for upstream version and directly applicable.
First of all I turned on more strict checking in compiler to see these
problems using "-Wl,--no-undefined". This revealed few missing files
in SOURCES, header files, one library and requirement to moving one
function from one file to another (I didn't find any reason to have it
in the previous one). [patch 0001]
Second issue appeared with change in our infrastructure. We started
using gcc5 and there is different handling of inline function. Fix is
backward compatible (at least it worked for me on older versions).
[patch 0002]
Additionally I found another typo in TRACE_EBUG, which was discovered
because of more strict checking in compiler and which prevented
application to build so I'm attaching this also. [patch 0003]
If it doesn't work for you or you have any doubts, feel free to comment
Best regards.
Jakub Jelen
[1] https://bugzilla.redhat.com/show_bug.cgi?id=1193560
Sorry for one more email. After a build for s390, I found that we need
to count with _some_ undefined symbols for some proprietary library for
CCA tokens so we can't turn on more strict compile options. I went again
through the build logs on this arch and tried to extract the most of the
problems I found and rebased into more commits:
* Patch [0001] is adding missing sw_crypt and mech_ec files during
compile time to prevent undefined symbols
* Patch [0002] is moving function get_ecsiglen from ecc_specific to
mech_ec, since this is the only place where is it used.
* Patch [0003] is adding missing header files for used symbols/functions
* Patch [0004] is reorganizing variables from header files to
* Patch [0005] is adding missing lber library at compile time (split
patch from last email)
* Patches [0006], [0007] are the same like described previous email
Feel free to comment if you have any questions or concerns.
--
Jakub Jelen
Associate Software Engineer
Security Technologies
Red Hat
>From 41734002c23a93bdb551b32ccfd8cf91c303291d Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 4 May 2015 16:44:22 +0200
Subject: [PATCH 7/7] Typo in TRACE_EBUG
---
usr/lib/pkcs11/icsf_stdll/icsf_specific.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/usr/lib/pkcs11/icsf_stdll/icsf_specific.c b/usr/lib/pkcs11/icsf_stdll/icsf_specific.c
index 74b07b7..1158eb5 100644
--- a/usr/lib/pkcs11/icsf_stdll/icsf_specific.c
+++ b/usr/lib/pkcs11/icsf_stdll/icsf_specific.c
@@ -929,7 +929,7 @@ static CK_RV close_session(struct session_state *session_state)
if ((rc = icsf_destroy_object(session_state->ld, &reason,
&mapping->icsf_object))) {
/* Log error */
- TRACE_EBUG("Failed to remove icsf object: %s/%lu/%c",
+ TRACE_DEBUG("Failed to remove icsf object: %s/%lu/%c",
mapping->icsf_object.token_name,
mapping->icsf_object.sequence,
mapping->icsf_object.id);
--
2.1.0
>From d7cecfe5961696b67d0cf5ae984b4bf171d30c0e Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 4 May 2015 16:43:46 +0200
Subject: [PATCH 6/7] GCC5 compatibility
---
usr/lib/pkcs11/common/btree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/usr/lib/pkcs11/common/btree.c b/usr/lib/pkcs11/common/btree.c
index 8cf8daa..cf66f18 100644
--- a/usr/lib/pkcs11/common/btree.c
+++ b/usr/lib/pkcs11/common/btree.c
@@ -231,7 +231,7 @@ bt_node_free(struct btree *t, unsigned long node_num, void (*delete_func)(void *
*
* return 0 if binary tree has at least 1 node in use, !0 otherwise
*/
-inline int
+extern inline int
bt_is_empty(struct btree *t)
{
return (t->free_nodes == t->size);
--
2.1.0
>From 931074145dc831a52ba4359cccdb1282575a8fab Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 11 May 2015 11:23:26 +0200
Subject: [PATCH 5/7] Add missing lber library
---
usr/lib/pkcs11/icsf_stdll/Makefile.am | 3 ++-
usr/lib/pkcs11/icsf_stdll/icsf.c | 1 +
2 files changed, 3 insertions(+), 1 deletion(-)
diff --git a/usr/lib/pkcs11/icsf_stdll/Makefile.am b/usr/lib/pkcs11/icsf_stdll/Makefile.am
index be35945..ca3f4da 100644
--- a/usr/lib/pkcs11/icsf_stdll/Makefile.am
+++ b/usr/lib/pkcs11/icsf_stdll/Makefile.am
@@ -24,7 +24,8 @@ opencryptoki_stdll_libpkcs11_icsf_la_LDFLAGS = -shared \
-lcrypto \
-lldap \
-lpthread \
- -lrt
+ -lrt \
+ -llber
opencryptoki_stdll_libpkcs11_icsf_la_SOURCES = ../common/asn1.c \
../common/btree.c \
diff --git a/usr/lib/pkcs11/icsf_stdll/icsf.c b/usr/lib/pkcs11/icsf_stdll/icsf.c
index 188000b..e7712e7 100644
--- a/usr/lib/pkcs11/icsf_stdll/icsf.c
+++ b/usr/lib/pkcs11/icsf_stdll/icsf.c
@@ -15,6 +15,7 @@
#include <string.h>
#include <ctype.h>
#include "icsf.h"
+#include <lber.h>
/* For logging functions: */
#include "defs.h"
--
2.1.0
>From 3545501e0093d8d701947f648badd92926a12c34 Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 11 May 2015 11:29:56 +0200
Subject: [PATCH 4/7] Reorganize structures in ec_defs header files to avoid
symbol redefinition
---
usr/lib/pkcs11/common/ec_defs.h | 41 ++++++++++++++---------------------------
usr/lib/pkcs11/common/mech_ec.c | 28 ++++++++++++++++++++++++++++
2 files changed, 42 insertions(+), 27 deletions(-)
diff --git a/usr/lib/pkcs11/common/ec_defs.h b/usr/lib/pkcs11/common/ec_defs.h
index 12e16c9..8049d9d 100644
--- a/usr/lib/pkcs11/common/ec_defs.h
+++ b/usr/lib/pkcs11/common/ec_defs.h
@@ -30,18 +30,19 @@
/* Supported Elliptic Curves */
#define NUMEC 12 /* number of supported curves */
-CK_BYTE brainpoolP160r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x01 };
-CK_BYTE brainpoolP192r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x03 };
-CK_BYTE brainpoolP224r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x05 };
-CK_BYTE brainpoolP256r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x07 };
-CK_BYTE brainpoolP320r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x09 };
-CK_BYTE brainpoolP384r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x0B };
-CK_BYTE brainpoolP512r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x0D };
-CK_BYTE prime192[] = { 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x01 };
-CK_BYTE secp224[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x21 };
-CK_BYTE prime256[] = { 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07 };
-CK_BYTE secp384[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x22 };
-CK_BYTE secp521[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x23 };
+extern CK_BYTE brainpoolP160r1[];
+extern CK_BYTE brainpoolP192r1[];
+extern CK_BYTE brainpoolP224r1[];
+extern CK_BYTE brainpoolP256r1[];
+extern CK_BYTE brainpoolP320r1[];
+extern CK_BYTE brainpoolP384r1[];
+extern CK_BYTE brainpoolP512r1[];
+extern CK_BYTE prime192[];
+extern CK_BYTE secp224[];
+extern CK_BYTE prime256[];
+extern CK_BYTE secp384[];
+extern CK_BYTE secp521[];
+
// structure of supported Elliptic Curves
@@ -52,19 +53,5 @@ struct _ec {
CK_VOID_PTR data;
}__attribute__ ((__packed__));
-struct _ec der_ec_supported[NUMEC] = {
- {BRAINPOOL_CURVE, CURVE160, sizeof(brainpoolP160r1), &brainpoolP160r1},
- {BRAINPOOL_CURVE, CURVE192, sizeof(brainpoolP192r1), &brainpoolP192r1},
- {BRAINPOOL_CURVE, CURVE224, sizeof(brainpoolP224r1), &brainpoolP224r1},
- {BRAINPOOL_CURVE, CURVE256, sizeof(brainpoolP256r1), &brainpoolP256r1},
- {BRAINPOOL_CURVE, CURVE320, sizeof(brainpoolP320r1), &brainpoolP320r1},
- {BRAINPOOL_CURVE, CURVE384, sizeof(brainpoolP384r1), &brainpoolP384r1},
- {BRAINPOOL_CURVE, CURVE512, sizeof(brainpoolP512r1), &brainpoolP512r1},
- {PRIME_CURVE, CURVE192, sizeof(prime192), &prime192},
- {PRIME_CURVE, CURVE224, sizeof(secp224), &secp224},
- {PRIME_CURVE, CURVE256, sizeof(prime256), &prime256},
- {PRIME_CURVE, CURVE384, sizeof(secp384), &secp384},
- {PRIME_CURVE, CURVE521, sizeof(secp521), &secp521},
-};
-
+extern struct _ec der_ec_supported[NUMEC];
#endif
diff --git a/usr/lib/pkcs11/common/mech_ec.c b/usr/lib/pkcs11/common/mech_ec.c
index d3b6523..51cbf8a 100644
--- a/usr/lib/pkcs11/common/mech_ec.c
+++ b/usr/lib/pkcs11/common/mech_ec.c
@@ -23,6 +23,34 @@
#include <stdint.h>
#include "ec_defs.h"
+CK_BYTE brainpoolP160r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x01 };
+CK_BYTE brainpoolP192r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x03 };
+CK_BYTE brainpoolP224r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x05 };
+CK_BYTE brainpoolP256r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x07 };
+CK_BYTE brainpoolP320r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x09 };
+CK_BYTE brainpoolP384r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x0B };
+CK_BYTE brainpoolP512r1[] = { 0x06, 0x09, 0x2B, 0x24, 0x03, 0x03, 0x02, 0x08, 0x01, 0x01, 0x0D };
+CK_BYTE prime192[] = { 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x01 };
+CK_BYTE secp224[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x21 };
+CK_BYTE prime256[] = { 0x06, 0x08, 0x2A, 0x86, 0x48, 0xCE, 0x3D, 0x03, 0x01, 0x07 };
+CK_BYTE secp384[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x22 };
+CK_BYTE secp521[] = { 0x06, 0x05, 0x2B, 0x81, 0x04, 0x00, 0x23 };
+
+struct _ec der_ec_supported[NUMEC] = {
+ {BRAINPOOL_CURVE, CURVE160, sizeof(brainpoolP160r1), &brainpoolP160r1},
+ {BRAINPOOL_CURVE, CURVE192, sizeof(brainpoolP192r1), &brainpoolP192r1},
+ {BRAINPOOL_CURVE, CURVE224, sizeof(brainpoolP224r1), &brainpoolP224r1},
+ {BRAINPOOL_CURVE, CURVE256, sizeof(brainpoolP256r1), &brainpoolP256r1},
+ {BRAINPOOL_CURVE, CURVE320, sizeof(brainpoolP320r1), &brainpoolP320r1},
+ {BRAINPOOL_CURVE, CURVE384, sizeof(brainpoolP384r1), &brainpoolP384r1},
+ {BRAINPOOL_CURVE, CURVE512, sizeof(brainpoolP512r1), &brainpoolP512r1},
+ {PRIME_CURVE, CURVE192, sizeof(prime192), &prime192},
+ {PRIME_CURVE, CURVE224, sizeof(secp224), &secp224},
+ {PRIME_CURVE, CURVE256, sizeof(prime256), &prime256},
+ {PRIME_CURVE, CURVE384, sizeof(secp384), &secp384},
+ {PRIME_CURVE, CURVE521, sizeof(secp521), &secp521},
+};
+
CK_RV
ckm_ec_key_pair_gen( TEMPLATE * publ_tmpl,
TEMPLATE * priv_tmpl )
--
2.1.0
>From dcfa6f07f21dd6f10409d96c895972cc1ab9b61d Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 11 May 2015 11:00:47 +0200
Subject: [PATCH 3/7] Add missing header files
---
usr/lib/pkcs11/common/mech_rng.c | 1 +
usr/sbin/pkcsicsf/pkcsicsf.c | 1 +
usr/sbin/pkcsslotd/garbage_linux.c | 1 +
usr/sbin/pkcsslotd/log.c | 2 ++
usr/sbin/pkcsslotd/mutex.c | 3 +++
usr/sbin/pkcsslotd/slotmgr.c | 3 +++
6 files changed, 11 insertions(+)
diff --git a/usr/lib/pkcs11/common/mech_rng.c b/usr/lib/pkcs11/common/mech_rng.c
index 9aaf68c..896dab7 100755
--- a/usr/lib/pkcs11/common/mech_rng.c
+++ b/usr/lib/pkcs11/common/mech_rng.c
@@ -301,6 +301,7 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
+#include <unistd.h>
#include "pkcs11types.h"
#include "defs.h"
diff --git a/usr/sbin/pkcsicsf/pkcsicsf.c b/usr/sbin/pkcsicsf/pkcsicsf.c
index 55efc4f..ec05edf 100644
--- a/usr/sbin/pkcsicsf/pkcsicsf.c
+++ b/usr/sbin/pkcsicsf/pkcsicsf.c
@@ -8,6 +8,7 @@
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
+#include <strings.h>
#include "icsf.h"
#include "slotmgr.h"
diff --git a/usr/sbin/pkcsslotd/garbage_linux.c b/usr/sbin/pkcsslotd/garbage_linux.c
index 90492ce..c3c5564 100755
--- a/usr/sbin/pkcsslotd/garbage_linux.c
+++ b/usr/sbin/pkcsslotd/garbage_linux.c
@@ -294,6 +294,7 @@
#include <string.h>
#include <sys/types.h>
#include <fcntl.h>
+#include <unistd.h>
#include "log.h"
#include "slotmgr.h"
diff --git a/usr/sbin/pkcsslotd/log.c b/usr/sbin/pkcsslotd/log.c
index 859a421..8f239f2 100755
--- a/usr/sbin/pkcsslotd/log.c
+++ b/usr/sbin/pkcsslotd/log.c
@@ -294,6 +294,8 @@
#include <syslog.h>
#include <stdarg.h>
#include <sys/types.h>
+#include <unistd.h>
+#include <stdlib.h>
#include "log.h"
#include "err.h"
diff --git a/usr/sbin/pkcsslotd/mutex.c b/usr/sbin/pkcsslotd/mutex.c
index c517e66..b3f6309 100755
--- a/usr/sbin/pkcsslotd/mutex.c
+++ b/usr/sbin/pkcsslotd/mutex.c
@@ -292,6 +292,9 @@
#include <stdarg.h>
#include <sys/types.h>
#include <sys/file.h>
+#include <sys/stat.h>
+#include <string.h>
+#include <unistd.h>
#include <grp.h>
#include "log.h"
diff --git a/usr/sbin/pkcsslotd/slotmgr.c b/usr/sbin/pkcsslotd/slotmgr.c
index b164e42..f8667d1 100755
--- a/usr/sbin/pkcsslotd/slotmgr.c
+++ b/usr/sbin/pkcsslotd/slotmgr.c
@@ -292,9 +292,12 @@
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>
+#include <unistd.h>
#include "log.h"
#include "slotmgr.h"
+#include "pkcsslotd.h"
+#include "parser.h"
Slot_Mgr_Shr_t *shmp; // pointer to the shared memory region.
int shmid;
--
2.1.0
>From a5679d3f0a42f3250b7b136e986010615cc20e83 Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 11 May 2015 11:22:35 +0200
Subject: [PATCH 2/7] Move get_ecsiglen to mech_ec, since this is the only
place where it is used
---
usr/lib/pkcs11/cca_stdll/cca_specific.c | 36 ------------------------------
usr/lib/pkcs11/common/mech_ec.c | 39 +++++++++++++++++++++++++++++++++
2 files changed, 39 insertions(+), 36 deletions(-)
diff --git a/usr/lib/pkcs11/cca_stdll/cca_specific.c b/usr/lib/pkcs11/cca_stdll/cca_specific.c
index 75762a2..87b44b9 100644
--- a/usr/lib/pkcs11/cca_stdll/cca_specific.c
+++ b/usr/lib/pkcs11/cca_stdll/cca_specific.c
@@ -2337,39 +2337,3 @@ token_specific_object_add(OBJECT *object)
return CKR_OK;
}
-CK_RV
-get_ecsiglen(OBJECT *key_obj, CK_ULONG *size)
-{
- CK_BBOOL flag;
- CK_ATTRIBUTE *attr = NULL;
- int i;
-
- flag = template_attribute_find( key_obj->template,
- CKA_ECDSA_PARAMS, &attr );
- if (flag == FALSE) {
- TRACE_ERROR("Could not find CKA_ECDSA_PARAMS for the key.\n");
- return CKR_FUNCTION_FAILED;
- }
-
- /* loop thru supported curves to find the size.
- * both pkcs#11v2.20 and CCA expect the signature length to be
- * twice the length of p.
- * (See EC Signatures in pkcs#11v2.20 and docs for CSNDDSG.)
- */
- for (i = 0; i < NUMEC; i++) {
- if ((memcmp(attr->pValue, der_ec_supported[i].data,
- attr->ulValueLen) == 0)) {
- *size = der_ec_supported[i].len_bits;
- /* round up if necessary */
- if ((*size % 8) == 0)
- *size = (*size / 8) * 2;
- else
- *size = ((*size / 8) + 1) * 2;
- TRACE_DEVEL("getlen, curve = %d, size = %d\n", der_ec_supported[i].len_bits, *size);
- return CKR_OK;
- }
- }
-
- TRACE_ERROR("%s\n", ock_err(ERR_MECHANISM_PARAM_INVALID));
- return CKR_MECHANISM_PARAM_INVALID;
-}
diff --git a/usr/lib/pkcs11/common/mech_ec.c b/usr/lib/pkcs11/common/mech_ec.c
index b4c96fe..d3b6523 100644
--- a/usr/lib/pkcs11/common/mech_ec.c
+++ b/usr/lib/pkcs11/common/mech_ec.c
@@ -20,6 +20,8 @@
#include "h_extern.h"
#include "tok_spec_struct.h"
#include "trace.h"
+#include <stdint.h>
+#include "ec_defs.h"
CK_RV
ckm_ec_key_pair_gen( TEMPLATE * publ_tmpl,
@@ -33,6 +35,43 @@ ckm_ec_key_pair_gen( TEMPLATE * publ_tmpl,
}
CK_RV
+get_ecsiglen(OBJECT *key_obj, CK_ULONG *size)
+{
+ CK_BBOOL flag;
+ CK_ATTRIBUTE *attr = NULL;
+ int i;
+
+ flag = template_attribute_find( key_obj->template,
+ CKA_ECDSA_PARAMS, &attr );
+ if (flag == FALSE) {
+ TRACE_ERROR("Could not find CKA_ECDSA_PARAMS for the key.\n");
+ return CKR_FUNCTION_FAILED;
+ }
+
+ /* loop thru supported curves to find the size.
+ * both pkcs#11v2.20 and CCA expect the signature length to be
+ * twice the length of p.
+ * (See EC Signatures in pkcs#11v2.20 and docs for CSNDDSG.)
+ */
+ for (i = 0; i < NUMEC; i++) {
+ if ((memcmp(attr->pValue, der_ec_supported[i].data,
+ attr->ulValueLen) == 0)) {
+ *size = der_ec_supported[i].len_bits;
+ /* round up if necessary */
+ if ((*size % 8) == 0)
+ *size = (*size / 8) * 2;
+ else
+ *size = ((*size / 8) + 1) * 2;
+ TRACE_DEVEL("getlen, curve = %d, size = %d\n", der_ec_supported[i].len_bits, *size);
+ return CKR_OK;
+ }
+ }
+
+ TRACE_ERROR("%s\n", ock_err(ERR_MECHANISM_PARAM_INVALID));
+ return CKR_MECHANISM_PARAM_INVALID;
+}
+
+CK_RV
ckm_ec_sign( CK_BYTE *in_data,
CK_ULONG in_data_len,
CK_BYTE *out_data,
--
2.1.0
>From 90f1e5c4f697a5ff906a738383dc38dd722043dd Mon Sep 17 00:00:00 2001
From: Jakub Jelen <[email protected]>
Date: Mon, 11 May 2015 11:24:10 +0200
Subject: [PATCH 1/7] Add mising sources to add missing symbols
---
usr/lib/pkcs11/ep11_stdll/Makefile.am | 1 +
usr/lib/pkcs11/ica_s390_stdll/Makefile.am | 2 ++
usr/lib/pkcs11/icsf_stdll/Makefile.am | 2 ++
usr/lib/pkcs11/soft_stdll/Makefile.am | 2 ++
usr/lib/pkcs11/tpm_stdll/Makefile.am | 2 ++
5 files changed, 9 insertions(+)
diff --git a/usr/lib/pkcs11/ep11_stdll/Makefile.am b/usr/lib/pkcs11/ep11_stdll/Makefile.am
index 70f3d61..1abdd18 100644
--- a/usr/lib/pkcs11/ep11_stdll/Makefile.am
+++ b/usr/lib/pkcs11/ep11_stdll/Makefile.am
@@ -24,6 +24,7 @@ opencryptoki_stdll_libpkcs11_ep11_la_SOURCES = ../common/asn1.c \
../common/dig_mgr.c \
../common/globals.c \
../common/loadsave.c \
+ ../common/mech_ec.c \
../common/mech_md5.c \
../common/mech_md2.c \
../common/mech_rng.c \
diff --git a/usr/lib/pkcs11/ica_s390_stdll/Makefile.am b/usr/lib/pkcs11/ica_s390_stdll/Makefile.am
index d14b778..e2f73c9 100644
--- a/usr/lib/pkcs11/ica_s390_stdll/Makefile.am
+++ b/usr/lib/pkcs11/ica_s390_stdll/Makefile.am
@@ -28,12 +28,14 @@ opencryptoki_stdll_libpkcs11_ica_la_SOURCES = ../common/asn1.c \
../common/dig_mgr.c \
../common/encr_mgr.c \
../common/globals.c \
+ ../common/sw_crypt.c \
../common/loadsave.c \
../common/key.c \
../common/key_mgr.c \
../common/mech_des.c \
../common/mech_des3.c \
../common/mech_aes.c \
+ ../common/mech_ec.c \
../common/mech_md5.c \
../common/mech_md2.c \
../common/mech_rng.c \
diff --git a/usr/lib/pkcs11/icsf_stdll/Makefile.am b/usr/lib/pkcs11/icsf_stdll/Makefile.am
index 9d3f82b..be35945 100644
--- a/usr/lib/pkcs11/icsf_stdll/Makefile.am
+++ b/usr/lib/pkcs11/icsf_stdll/Makefile.am
@@ -40,6 +40,7 @@ opencryptoki_stdll_libpkcs11_icsf_la_SOURCES = ../common/asn1.c \
../common/dp_obj.c \
../common/mech_aes.c \
../common/mech_rsa.c \
+ ../common/mech_ec.c \
../common/obj_mgr.c \
../common/template.c \
../common/p11util.c \
@@ -51,6 +52,7 @@ opencryptoki_stdll_libpkcs11_icsf_la_SOURCES = ../common/asn1.c \
../common/object.c \
../common/decr_mgr.c \
../common/globals.c \
+ ../common/sw_crypt.c \
../common/loadsave.c \
../common/utility.c \
../common/mech_des.c \
diff --git a/usr/lib/pkcs11/soft_stdll/Makefile.am b/usr/lib/pkcs11/soft_stdll/Makefile.am
index bbfcc75..2ee2cda 100644
--- a/usr/lib/pkcs11/soft_stdll/Makefile.am
+++ b/usr/lib/pkcs11/soft_stdll/Makefile.am
@@ -23,12 +23,14 @@ opencryptoki_stdll_libpkcs11_sw_la_SOURCES = ../common/asn1.c \
../common/dig_mgr.c \
../common/encr_mgr.c \
../common/globals.c \
+ ../common/sw_crypt.c \
../common/loadsave.c \
../common/key.c \
../common/key_mgr.c \
../common/mech_aes.c \
../common/mech_des.c \
../common/mech_des3.c \
+ ../common/mech_ec.c \
../common/mech_dh.c \
../common/mech_md5.c \
../common/mech_md2.c \
diff --git a/usr/lib/pkcs11/tpm_stdll/Makefile.am b/usr/lib/pkcs11/tpm_stdll/Makefile.am
index e98b197..038c82b 100644
--- a/usr/lib/pkcs11/tpm_stdll/Makefile.am
+++ b/usr/lib/pkcs11/tpm_stdll/Makefile.am
@@ -35,6 +35,7 @@ opencryptoki_stdll_libpkcs11_tpm_la_SOURCES = ../common/asn1.c \
../common/mech_aes.c \
../common/$(MECH_DSA) \
../common/mech_rsa.c \
+ ../common/mech_ec.c \
../common/obj_mgr.c \
../common/template.c \
../common/p11util.c \
@@ -46,6 +47,7 @@ opencryptoki_stdll_libpkcs11_tpm_la_SOURCES = ../common/asn1.c \
../common/object.c \
../common/decr_mgr.c \
../common/globals.c \
+ ../common/sw_crypt.c \
../common/loadsave.c \
../common/utility.c \
../common/mech_des.c \
--
2.1.0
------------------------------------------------------------------------------
One dashboard for servers and applications across Physical-Virtual-Cloud
Widest out-of-the-box monitoring support with 50+ applications
Performance metrics, stats and reports that give you Actionable Insights
Deep dive visibility with transaction tracing using APM Insight.
http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
_______________________________________________
Opencryptoki-tech mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opencryptoki-tech