refactor(interception): reset Kotlin base to upstream PR #157

Our reimplementation of PR 157's logic had a silent divergence causing
G10 to still fail under binder stress. Instead of hunting line-by-line,
replace all shared Kotlin/Java/C++ files with PR 157's exact proven
versions that pass all 63 conformance tests. Our Rust-exclusive files
(NativeCertGen, GeneratedKeyPersistence, native-certgen crate) remain
in the repo but are dormant until re-wired in a follow-up commit.
This commit is contained in:
Enginex0
2026-03-20 05:41:15 +01:00
parent 8fdc59a142
commit 94c8e5b182
28 changed files with 966 additions and 1241 deletions
@@ -0,0 +1,8 @@
package android.hardware.security.keymint;
public @interface HardwareAuthenticatorType {
int NONE = 0;
int PASSWORD = 1;
int FINGERPRINT = 2;
int ANY = -1;
}
@@ -1,5 +1,6 @@
package android.os;
/** Stub for android.os.SELinux. */
public class SELinux {
public static boolean checkSELinuxAccess(
String scon, String tcon, String tclass, String perm) {
@@ -1,14 +1,21 @@
package android.os;
/**
* Stub for android.os.ServiceSpecificException.
*
* <p>Used by AIDL-generated binder stubs to report service-specific errors with numeric codes.
* The binder framework serializes this as EX_SERVICE_SPECIFIC on the wire, preserving the integer
* error code for the client.
*/
public class ServiceSpecificException extends RuntimeException {
public final int errorCode;
public ServiceSpecificException(int errorCode) {
this.errorCode = errorCode;
}
public ServiceSpecificException(int errorCode, String message) {
super(message);
this.errorCode = errorCode;
}
public ServiceSpecificException(int errorCode) {
this(errorCode, null);
}
}