summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjmagne <jmagne@c9f7a03b-bd48-0410-a16d-cbbf54688b0b>2009-01-24 01:10:58 +0000
committerjmagne <jmagne@c9f7a03b-bd48-0410-a16d-cbbf54688b0b>2009-01-24 01:10:58 +0000
commitdd56a3b78545dcccdb9c2aae89a9e0d2daad3fa0 (patch)
treeb9f88c8cdb1efdcef1c550f7237121cfbaffe643
parent661f351153a21c854d69e6248dc0ff5e40129baf (diff)
Fix for Bug#459539, 330J token support.
git-svn-id: svn+ssh://svn.fedorahosted.org/svn/pki/trunk@186 c9f7a03b-bd48-0410-a16d-cbbf54688b0b
-rw-r--r--pki/base/tps/src/apdu/Generate_Key_APDU.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/pki/base/tps/src/apdu/Generate_Key_APDU.cpp b/pki/base/tps/src/apdu/Generate_Key_APDU.cpp
index bb3629cd0..7d78b5513 100644
--- a/pki/base/tps/src/apdu/Generate_Key_APDU.cpp
+++ b/pki/base/tps/src/apdu/Generate_Key_APDU.cpp
@@ -40,16 +40,22 @@ BYTE type, Buffer &wrapped_challenge, Buffer &key_check)
SetP1(p1);
SetP2(p2);
Buffer data;
- data = Buffer(1,alg) +
+ data =
+ Buffer(1,alg) +
Buffer(1,(BYTE)(keysize/256)) +
Buffer(1,(BYTE)(keysize%256)) +
- Buffer(1,option) +
+ Buffer(1,option) +
Buffer(1,type) +
Buffer(1,(BYTE)wrapped_challenge.size()) +
Buffer(wrapped_challenge) +
- Buffer(1,(BYTE)key_check.size()) +
- Buffer(key_check);
+
+ Buffer(1,(BYTE)key_check.size());
+
+ if(key_check.size() > 0)
+ data = data + Buffer(key_check);
+
SetData(data);
+
}
TPS_PUBLIC Generate_Key_APDU::~Generate_Key_APDU ()