diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-04-28 16:06:40 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2022-04-28 16:06:40 +0000 |
commit | 298a029a7c91147e135c7ff13090b12579ae69ad (patch) | |
tree | af813a20e0885d7023918091b9340b82ec24af54 | |
parent | d9e6cb29bbab600b07f93e781d4525238ff729fd (diff) | |
parent | 61354891677ecf9f11f228da67465fc18b2de7c4 (diff) | |
download | SecureElement-298a029a7c91147e135c7ff13090b12579ae69ad.tar.gz |
Snap for 8512216 from 61354891677ecf9f11f228da67465fc18b2de7c4 to tm-frc-art-release
Change-Id: Ic530bec831a5cf28126e16265fb6ec163850ab13
-rwxr-xr-x[-rw-r--r--] | src/com/android/se/Channel.java | 12 | ||||
-rw-r--r-- | src/com/android/se/SecureElementService.java | 20 | ||||
-rw-r--r-- | src/com/android/se/Terminal.java | 10 | ||||
-rwxr-xr-x | src/com/android/se/internal/Util.java | 2 |
4 files changed, 42 insertions, 2 deletions
diff --git a/src/com/android/se/Channel.java b/src/com/android/se/Channel.java index d6df415..73622fc 100644..100755 --- a/src/com/android/se/Channel.java +++ b/src/com/android/se/Channel.java @@ -213,7 +213,7 @@ public class Channel implements IBinder.DeathRecipient { cla = (byte) ((cla & 0xBC) | channelNumber); } else if (channelNumber < 20) { // b7 = 1 indicates the further interindustry class byte coding - boolean isSm = (cla & 0x0C) != 0; + boolean isSm = (((cla & 0x40) == 0x00) && ((cla & 0x0C) != 0)); cla = (byte) ((cla & 0xB0) | 0x40 | (channelNumber - 4)); if (isSm) { cla |= 0x20; @@ -330,5 +330,15 @@ public class Channel implements IBinder.DeathRecipient { throw new ServiceSpecificException(SEService.IO_ERROR, e.getMessage()); } } + + @Override + public String getInterfaceHash() { + return ISecureElementChannel.HASH; + } + + @Override + public int getInterfaceVersion() { + return ISecureElementChannel.VERSION; + } } } diff --git a/src/com/android/se/SecureElementService.java b/src/com/android/se/SecureElementService.java index d3efb11..20ae533 100644 --- a/src/com/android/se/SecureElementService.java +++ b/src/com/android/se/SecureElementService.java @@ -152,6 +152,16 @@ public final class SecureElementService extends Service { terminal.dump(writer); } } + + @Override + public String getInterfaceHash() { + return ISecureElementService.HASH; + } + + @Override + public int getInterfaceVersion() { + return ISecureElementService.VERSION; + } } private final ISecureElementService.Stub mSecureElementServiceBinder = @@ -488,6 +498,16 @@ public final class SecureElementService extends Service { } return channel.new SecureElementChannel(); } + + @Override + public String getInterfaceHash() { + return ISecureElementSession.HASH; + } + + @Override + public int getInterfaceVersion() { + return ISecureElementSession.VERSION; + } } private final BroadcastReceiver mMultiSimConfigChangedReceiver = new BroadcastReceiver() { diff --git a/src/com/android/se/Terminal.java b/src/com/android/se/Terminal.java index 1c055a0..d338cf8 100644 --- a/src/com/android/se/Terminal.java +++ b/src/com/android/se/Terminal.java @@ -995,5 +995,15 @@ public class Terminal { public boolean reset() { return Terminal.this.reset(); } + + @Override + public String getInterfaceHash() { + return ISecureElementReader.HASH; + } + + @Override + public int getInterfaceVersion() { + return ISecureElementReader.VERSION; + } } } diff --git a/src/com/android/se/internal/Util.java b/src/com/android/se/internal/Util.java index 8e9cfe3..8a52962 100755 --- a/src/com/android/se/internal/Util.java +++ b/src/com/android/se/internal/Util.java @@ -135,7 +135,7 @@ public class Util { cla = (byte) ((cla & 0xBC) | channelNumber); } else if (channelNumber < 20) { // b7 = 1 indicates the further interindustry class byte coding - boolean isSM = (cla & 0x0C) != 0; + boolean isSM = (((cla & 0x40) == 0x00) && ((cla & 0x0C) != 0)); cla = (byte) ((cla & 0xB0) | 0x40 | (channelNumber - 4)); if (isSM) { cla |= 0x20; |