diff options
| author | J08nY | 2017-11-05 17:09:20 +0100 |
|---|---|---|
| committer | J08nY | 2017-11-05 17:09:20 +0100 |
| commit | 45c555818a7bf2765434f2494d56a31af7dc6cfa (patch) | |
| tree | 552fd199ca07aea632608d9a7cb7aeec0dffb67b | |
| parent | 67f1f281228245d1b4e4b3b6b750aa00ffed9970 (diff) | |
| download | ECTester-45c555818a7bf2765434f2494d56a31af7dc6cfa.tar.gz ECTester-45c555818a7bf2765434f2494d56a31af7dc6cfa.tar.zst ECTester-45c555818a7bf2765434f2494d56a31af7dc6cfa.zip | |
| -rw-r--r-- | src/cz/crcs/ectester/reader/output/TextTestWriter.java | 2 | ||||
| -rw-r--r-- | src/cz/crcs/ectester/reader/response/Response.java | 17 |
2 files changed, 15 insertions, 4 deletions
diff --git a/src/cz/crcs/ectester/reader/output/TextTestWriter.java b/src/cz/crcs/ectester/reader/output/TextTestWriter.java index 6fbfce7..bcebcd5 100644 --- a/src/cz/crcs/ectester/reader/output/TextTestWriter.java +++ b/src/cz/crcs/ectester/reader/output/TextTestWriter.java @@ -12,7 +12,7 @@ public class TextTestWriter implements TestWriter { private PrintStream output; private ResponseWriter respWriter; - public static int BASE_WIDTH = 72; + public static int BASE_WIDTH = 76; public TextTestWriter(PrintStream output) { this.output = output; diff --git a/src/cz/crcs/ectester/reader/response/Response.java b/src/cz/crcs/ectester/reader/response/Response.java index 1906811..42629b4 100644 --- a/src/cz/crcs/ectester/reader/response/Response.java +++ b/src/cz/crcs/ectester/reader/response/Response.java @@ -7,7 +7,6 @@ import javacard.framework.ISO7816; import javacard.security.KeyPair; import javax.smartcardio.ResponseAPDU; -import java.util.List; /** * @author Jan Jancar johny@neuromancer.sk @@ -21,6 +20,7 @@ public abstract class Response { private byte[][] params; //TODO replace params with EC_Data? private boolean success = true; + private boolean error = false; public Response(ResponseAPDU response, long time) { this.resp = response; @@ -45,22 +45,28 @@ public abstract class Response { } } else { success = false; + error = true; } } - if ((short) resp.getSW() != ISO7816.SW_NO_ERROR) + if ((short) resp.getSW() != ISO7816.SW_NO_ERROR) { success = false; + error = true; + } + //try to parse numParams.. params = new byte[numParams][]; for (int i = 0; i < numParams; i++) { if (data.length - offset < 2) { success = false; + error = true; break; } short paramLength = Util.getShort(data, offset); offset += 2; if (data.length < offset + paramLength) { + error = true; success = false; break; } @@ -114,6 +120,10 @@ public abstract class Response { return this.success; } + public boolean error() { + return this.error; + } + public abstract String getDescription(); /** @@ -121,6 +131,7 @@ public abstract class Response { */ public static class AllocateKeyAgreement extends Response { byte kaType; + public AllocateKeyAgreement(ResponseAPDU response, long time, byte kaType) { super(response, time); this.kaType = kaType; @@ -134,7 +145,7 @@ public abstract class Response { } } - + public static class Allocate extends Response { private byte keyPair; |
