From ded801f55dc4d28891c52babddb63031e9693189 Mon Sep 17 00:00:00 2001 From: Frank Morgner Date: Tue, 28 Jul 2015 19:01:36 +0200 Subject: [PATCH] ACardEmulator: added MUSCLE Applet --- .gitmodules | 3 +++ ACardEmulator/app/app.iml | 1 + ACardEmulator/app/build.gradle | 1 + ACardEmulator/app/src/main/external/MuscleApplet | 1 + .../vsmartcard/acardemulator/SimulatorService.java | 11 +++++++++++ ACardEmulator/app/src/main/res/values/strings.xml | 2 ++ ACardEmulator/app/src/main/res/xml/aid_list.xml | 4 ++++ 7 files changed, 23 insertions(+) create mode 160000 ACardEmulator/app/src/main/external/MuscleApplet diff --git a/.gitmodules b/.gitmodules index 40f30c6..ec47921 100644 --- a/.gitmodules +++ b/.gitmodules @@ -14,3 +14,6 @@ [submodule "ACardEmulator/app/src/main/external/jcardsim"] path = ACardEmulator/app/src/main/external/jcardsim url = https://github.com/frankmorgner/jcardsim.git +[submodule "ACardEmulator/app/src/main/external/MuscleApplet"] + path = ACardEmulator/app/src/main/external/MuscleApplet + url = https://github.com/martinpaljak/MuscleApplet.git diff --git a/ACardEmulator/app/app.iml b/ACardEmulator/app/app.iml index d4374c6..c0b3b33 100644 --- a/ACardEmulator/app/app.iml +++ b/ACardEmulator/app/app.iml @@ -58,6 +58,7 @@ + diff --git a/ACardEmulator/app/build.gradle b/ACardEmulator/app/build.gradle index 7df216c..765dbd4 100644 --- a/ACardEmulator/app/build.gradle +++ b/ACardEmulator/app/build.gradle @@ -32,6 +32,7 @@ android { main.java.srcDirs += 'src/main/external/android-scio/src/main' main.java.srcDirs += 'src/main/external/ykneo-openpgp/applet/src' main.java.srcDirs += 'src/main/external/ykneo-oath/applet/src' + main.java.srcDirs += 'src/main/external/MuscleApplet/src' } } diff --git a/ACardEmulator/app/src/main/external/MuscleApplet b/ACardEmulator/app/src/main/external/MuscleApplet new file mode 160000 index 0000000..d005f36 --- /dev/null +++ b/ACardEmulator/app/src/main/external/MuscleApplet @@ -0,0 +1 @@ +Subproject commit d005f36209bdd7020bac0d783b228243126fd2f8 diff --git a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java index 3c2fc6b..c6da32c 100644 --- a/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java +++ b/ACardEmulator/app/src/main/java/com/vsmartcard/acardemulator/SimulatorService.java @@ -30,6 +30,7 @@ import com.licel.jcardsim.base.Simulator; import com.licel.jcardsim.base.SimulatorRuntime; import com.licel.jcardsim.samples.HelloWorldApplet; import com.licel.jcardsim.utils.AIDUtil; +import com.musclecard.CardEdge.CardEdge; import net.pwendland.javacard.pki.isoapplet.IsoApplet; @@ -114,6 +115,16 @@ public class SimulatorService extends HostApduService { extra_error += "\n" + "Could not install " + name + " (AID: " + aid + ")"; } + name = getResources().getString(R.string.applet_muscle); + aid = getResources().getString(R.string.aid_muscle); + try { + simulator.installApplet(AIDUtil.create(aid), CardEdge.class); + extra_install += "\n" + name + " (AID: " + aid + ")"; + } catch (Exception e) { + e.printStackTrace(); + extra_error += "\n" + "Could not install " + name + " (AID: " + aid + ")"; + } + Intent i = new Intent(TAG); if (!extra_error.isEmpty()) i.putExtra(EXTRA_ERROR, extra_error); diff --git a/ACardEmulator/app/src/main/res/values/strings.xml b/ACardEmulator/app/src/main/res/values/strings.xml index 4fafe63..4d70007 100644 --- a/ACardEmulator/app/src/main/res/values/strings.xml +++ b/ACardEmulator/app/src/main/res/values/strings.xml @@ -21,5 +21,7 @@ Yubico\'s OpenPGP Applet A000000527210101 Yubico\'s OATH Applet + A00000000101 + MUSCLE Applet diff --git a/ACardEmulator/app/src/main/res/xml/aid_list.xml b/ACardEmulator/app/src/main/res/xml/aid_list.xml index 2c0c373..0b9a99e 100644 --- a/ACardEmulator/app/src/main/res/xml/aid_list.xml +++ b/ACardEmulator/app/src/main/res/xml/aid_list.xml @@ -20,4 +20,8 @@ + + + +