The content of this branch was automatically imported from Fedora ELN with the following as its source: https://src.fedoraproject.org/rpms/opencryptoki#28f33cc369b00493951d176ecb864885577c381b
35 lines
1.3 KiB
Diff
35 lines
1.3 KiB
Diff
From c090136338b585370df6a8e29518f9e55d388fe5 Mon Sep 17 00:00:00 2001
|
|
From: Ingo Franzki <ifranzki@linux.ibm.com>
|
|
Date: Mon, 6 Jul 2020 13:16:34 +0200
|
|
Subject: [PATCH 3/5] pkcstok_migrate: Fix public token object conversion on
|
|
little endian platforms
|
|
|
|
The new format stores numeric fields in the object header in big endian, while
|
|
the old format uses the platform endianness. So convert the fields to big endian
|
|
during conversion.
|
|
|
|
Signed-off-by: Ingo Franzki <ifranzki@linux.ibm.com>
|
|
---
|
|
usr/sbin/pkcstok_migrate/pkcstok_migrate.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/usr/sbin/pkcstok_migrate/pkcstok_migrate.c b/usr/sbin/pkcstok_migrate/pkcstok_migrate.c
|
|
index 0148102c..136c010c 100644
|
|
--- a/usr/sbin/pkcstok_migrate/pkcstok_migrate.c
|
|
+++ b/usr/sbin/pkcstok_migrate/pkcstok_migrate.c
|
|
@@ -103,9 +103,9 @@ static CK_RV make_OBJECT_PUB_312(char **obj_new, unsigned int *obj_new_len,
|
|
|
|
/* Setup object */
|
|
memset(&header, 0, sizeof(header));
|
|
- header.tokversion = 0x0003000C;
|
|
+ header.tokversion = htobe32(0x0003000C);
|
|
header.private_flag = 0x00;
|
|
- header.object_len = clear_len;
|
|
+ header.object_len = htobe32(clear_len);
|
|
memcpy(object, &header, sizeof(header));
|
|
memcpy(object + sizeof(header), clear, clear_len);
|
|
|
|
--
|
|
2.16.2.windows.1
|
|
|