dexter submitted this change.
AccessRuleMaster: use constants for the command bytes
The command bytes (0xF0, b0xF1, 0xF2) only appear as magic numbers
in the code. Let's use constants, so that it is clear what those
bytes mean and where they come from.
Related: SYS#7245
Change-Id: Ia3ccb511886b7da9a3a8e4ab7c89af3ab99c0abf
---
M aram/src/main/java/fr/bmartel/aram/AccessRuleMaster.java
1 file changed, 9 insertions(+), 7 deletions(-)
diff --git a/aram/src/main/java/fr/bmartel/aram/AccessRuleMaster.java b/aram/src/main/java/fr/bmartel/aram/AccessRuleMaster.java
index a89e51e..bdce9c3 100644
--- a/aram/src/main/java/fr/bmartel/aram/AccessRuleMaster.java
+++ b/aram/src/main/java/fr/bmartel/aram/AccessRuleMaster.java
@@ -43,6 +43,11 @@
public final static short SIZE_HASH = 32;
public final static short SIZE_RULE = (short) (2 + (20 * 8));
+ /* see also: GPD_SPE_013, Table B-1 */
+ public final static byte COMMAND_STORE_REF_AR_DO = (byte) 0xF0;
+ public final static byte COMMAND_DELETE = (byte) 0xF1;
+ public final static byte COMMAND_UPDATE_REFRESH_TAG = (byte) 0xF2;
+
/**
* APDU data size.
*/
@@ -280,14 +285,11 @@
short ofs = ISO7816.OFFSET_CDATA;
- if (buf[ofs] == (byte) 0xF0) {
- //Command-Store-AR-DO
+ if (buf[ofs] == AccessRuleMaster.COMMAND_STORE_REF_AR_DO) {
storeArDo(buf);
- } else if (buf[ofs] == (byte) 0xF1) {
- //Command-Delete-AR-DO
+ } else if (buf[ofs] == AccessRuleMaster.COMMAND_DELETE) {
deleteArDo(buf);
- } else if (buf[ofs] == (byte) 0xF2) {
- //Command-UpdateRefreshTag-DO
+ } else if (buf[ofs] == AccessRuleMaster.COMMAND_UPDATE_REFRESH_TAG) {
updateRefreshTag();
} else {
ISOException.throwIt(ISO7816.SW_DATA_INVALID);
@@ -327,7 +329,7 @@
short ofs = ISO7816.OFFSET_CDATA;
- checkTLV(buf, ofs, (byte) 0xF1, (short) (6 + AccessRuleMaster.SIZE_AID + AccessRuleMaster.SIZE_HASH + AccessRuleMaster.SIZE_RULE));
+ checkTLV(buf, ofs, AccessRuleMaster.COMMAND_DELETE, (short) (6 + AccessRuleMaster.SIZE_AID + AccessRuleMaster.SIZE_HASH + AccessRuleMaster.SIZE_RULE));
if (buf[(short) (ofs + 1)] == 0) {
//delete all rules if length == 0
RuleEntry.deleteAll();
To view, visit change 39614. To unsubscribe, or for help writing mail filters, visit settings.