summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJack Magne <jmagne@localhost.localdomain>2015-08-24 11:23:04 -0700
committerMatthew Harmsen <mharmsen@redhat.com>2015-08-24 19:41:05 -0600
commit4ae40d248d4dec0b38ec18575afedb9f92cb48cf (patch)
tree5ac51e8ceeda04dae347bdf75cfb9c16c4fbe84b
parentafb9d828c68ae4fa22ea8faa5102308902fd7e00 (diff)
downloadpki-4ae40d248d4dec0b38ec18575afedb9f92cb48cf.tar.gz
pki-4ae40d248d4dec0b38ec18575afedb9f92cb48cf.tar.xz
pki-4ae40d248d4dec0b38ec18575afedb9f92cb48cf.zip
SC650 format/enroll fails
Simple fix to correctly identify scp01/gp201 sc650 card. (cherry picked from commit 3158e1279b210d9f409918b24180bf20b0774614)
-rw-r--r--base/tps/src/org/dogtagpki/server/tps/processor/TPSProcessor.java12
1 files changed, 11 insertions, 1 deletions
diff --git a/base/tps/src/org/dogtagpki/server/tps/processor/TPSProcessor.java b/base/tps/src/org/dogtagpki/server/tps/processor/TPSProcessor.java
index 14e8eadbf..637cfa394 100644
--- a/base/tps/src/org/dogtagpki/server/tps/processor/TPSProcessor.java
+++ b/base/tps/src/org/dogtagpki/server/tps/processor/TPSProcessor.java
@@ -3402,10 +3402,20 @@ public class TPSProcessor {
byte protocol = oidSecureChannelProtocol.at(length - 2);
byte implementation = oidSecureChannelProtocol.at(length - 1);
+ if (protocol == SecureChannel.SECURE_PROTO_03) {
+ throw new TPSException("TPSProcessor.gp211GetSecureChannelProtocolDetails: No support for SCP03 as of yet, bailing.",
+ TPSStatus.STATUS_ERROR_SECURE_CHANNEL);
+ }
+
platProtInfo.setProtocol(protocol);
platProtInfo.setImplementation(implementation);
platProtInfo.setKeysetInfoData(keyData);
- platProtInfo.setPlatform(SecureChannel.GP211);
+
+ if (protocol == SecureChannel.SECURE_PROTO_02)
+ platProtInfo.setPlatform(SecureChannel.GP211);
+ else
+ platProtInfo.setPlatform(SecureChannel.GP201);
+
CMS.debug("TPSProcessor.gp211GetSecureChannelProtocolDetails: protocol: " + protocol + " implementation: "
+ implementation + " keyInfoData: " + keyData.toHexString());