├── openeuicc
├── app
│ ├── .gitignore
│ ├── src
│ │ ├── debug
│ │ │ ├── ic_launcher-playstore.png
│ │ │ └── res
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ ├── ic_launcher_esimm.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ └── ic_launcher_esimm.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ └── ic_launcher_esimm.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ └── ic_launcher_esimm.png
│ │ │ │ └── mipmap-xxxhdpi
│ │ │ │ └── ic_launcher_esimm.png
│ │ ├── release
│ │ │ ├── ic_launcher-playstore.png
│ │ │ └── res
│ │ │ │ ├── mipmap-hdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-mdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-xhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-xxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ ├── mipmap-xxxhdpi
│ │ │ │ ├── ic_launcher.png
│ │ │ │ ├── ic_launcher_round.png
│ │ │ │ └── ic_launcher_foreground.png
│ │ │ │ └── mipmap-anydpi-v26
│ │ │ │ ├── ic_launcher.xml
│ │ │ │ └── ic_launcher_round.xml
│ │ ├── main
│ │ │ ├── res
│ │ │ │ ├── layout
│ │ │ │ │ ├── spinner_item.xml
│ │ │ │ │ ├── activity_main.xml
│ │ │ │ │ └── fragment_euicc.xml
│ │ │ │ ├── drawable
│ │ │ │ │ ├── ic_launcher_background.xml
│ │ │ │ │ ├── ic_add.xml
│ │ │ │ │ ├── ic_check_black.xml
│ │ │ │ │ ├── ic_menu_black.xml
│ │ │ │ │ └── ic_scan_black.xml
│ │ │ │ ├── mipmap-anydpi-v26
│ │ │ │ │ ├── ic_launcher.xml
│ │ │ │ │ └── ic_launcher_round.xml
│ │ │ │ ├── values
│ │ │ │ │ ├── colors.xml
│ │ │ │ │ └── strings.xml
│ │ │ │ ├── drawable-v24
│ │ │ │ │ └── ic_launcher_foreground.xml
│ │ │ │ ├── xml
│ │ │ │ │ └── network_security_config.xml
│ │ │ │ ├── menu
│ │ │ │ │ ├── fragment_profile_rename.xml
│ │ │ │ │ ├── profile_options.xml
│ │ │ │ │ ├── fragment_profile_download.xml
│ │ │ │ │ └── activity_main.xml
│ │ │ │ └── raw
│ │ │ │ │ └── symantec_gsma_rspv2_root_ci1
│ │ │ └── java
│ │ │ │ └── im
│ │ │ │ └── angry
│ │ │ │ └── openeuicc
│ │ │ │ ├── ui
│ │ │ │ ├── LuiActivity.kt
│ │ │ │ └── EuiccChannelFragmentUtils.kt
│ │ │ │ ├── util
│ │ │ │ ├── StringUtils.kt
│ │ │ │ ├── TelephonyUtils.kt
│ │ │ │ └── UiUtils.kt
│ │ │ │ ├── core
│ │ │ │ ├── EuiccChannel.kt
│ │ │ │ ├── OmapiApduChannel.kt
│ │ │ │ ├── TelephonyManagerApduChannel.kt
│ │ │ │ └── OmapiChannel.kt
│ │ │ │ └── OpenEuiccApplication.kt
│ │ ├── test
│ │ │ └── java
│ │ │ │ └── im
│ │ │ │ └── angry
│ │ │ │ └── openeuicc
│ │ │ │ └── ExampleUnitTest.kt
│ │ └── androidTest
│ │ │ └── java
│ │ │ └── im
│ │ │ └── angry
│ │ │ └── openeuicc
│ │ │ └── ExampleInstrumentedTest.kt
│ ├── release
│ │ └── output-metadata.json
│ ├── proguard-rules.pro
│ └── build.gradle
├── libs
│ ├── hidden-apis-shim
│ │ ├── .gitignore
│ │ ├── consumer-rules.pro
│ │ ├── src
│ │ │ ├── main
│ │ │ │ └── AndroidManifest.xml
│ │ │ ├── test
│ │ │ │ └── java
│ │ │ │ │ └── im
│ │ │ │ │ └── angry
│ │ │ │ │ └── openeuicc
│ │ │ │ │ └── hidden_apis_shim
│ │ │ │ │ └── ExampleUnitTest.kt
│ │ │ └── androidTest
│ │ │ │ └── java
│ │ │ │ └── im
│ │ │ │ └── angry
│ │ │ │ └── openeuicc
│ │ │ │ └── hidden_apis_shim
│ │ │ │ └── ExampleInstrumentedTest.kt
│ │ ├── proguard-rules.pro
│ │ └── build.gradle
│ ├── hidden-apis-stub
│ │ ├── .gitignore
│ │ ├── src
│ │ │ └── main
│ │ │ │ └── AndroidManifest.xml
│ │ └── build.gradle
│ └── lpad-sm-dp-plus-connector
│ │ ├── .settings
│ │ ├── org.eclipse.jdt.apt.core.prefs
│ │ ├── org.eclipse.m2e.core.prefs
│ │ ├── org.eclipse.core.resources.prefs
│ │ └── org.eclipse.jdt.core.prefs
│ │ ├── src
│ │ ├── main
│ │ │ └── java
│ │ │ │ └── com
│ │ │ │ └── truphone
│ │ │ │ ├── es9plus
│ │ │ │ ├── message
│ │ │ │ │ ├── MsgBody.java
│ │ │ │ │ ├── response
│ │ │ │ │ │ ├── CancelSessionResp.java
│ │ │ │ │ │ ├── ReleaseProfileResp.java
│ │ │ │ │ │ ├── HandleNotificationResp.java
│ │ │ │ │ │ ├── HandleDownloadProgressInfoResp.java
│ │ │ │ │ │ ├── base
│ │ │ │ │ │ │ ├── ResponseMsgBody.java
│ │ │ │ │ │ │ ├── NotificationPointStatus.java
│ │ │ │ │ │ │ ├── HeaderResp.java
│ │ │ │ │ │ │ ├── FunctionExecutionStatus.java
│ │ │ │ │ │ │ └── StatusCodeData.java
│ │ │ │ │ │ ├── DownloadOrderResp.java
│ │ │ │ │ │ ├── GetBoundProfilePackageResp.java
│ │ │ │ │ │ └── ConfirmOrderResp.java
│ │ │ │ │ ├── request
│ │ │ │ │ │ ├── base
│ │ │ │ │ │ │ └── RequestMsgBody.java
│ │ │ │ │ │ ├── ReleaseProfileReq.java
│ │ │ │ │ │ ├── HandleNotificationReq.java
│ │ │ │ │ │ ├── GetBoundProfilePackageReq.java
│ │ │ │ │ │ ├── AuthenticateClientReq.java
│ │ │ │ │ │ ├── InitiateAuthenticationReq.java
│ │ │ │ │ │ ├── DownloadOrderReq.java
│ │ │ │ │ │ ├── CancelSessionReq.java
│ │ │ │ │ │ └── ConfirmOrderReq.java
│ │ │ │ │ └── MsgType.java
│ │ │ │ ├── HttpResponse.java
│ │ │ │ └── AllocateProfileResponse.java
│ │ │ │ ├── lpa
│ │ │ │ ├── progress
│ │ │ │ │ └── ProgressPhase.java
│ │ │ │ ├── ApduTransmittedListener.java
│ │ │ │ ├── impl
│ │ │ │ │ ├── download
│ │ │ │ │ │ ├── SbppApdu.java
│ │ │ │ │ │ └── CloseResources.java
│ │ │ │ │ ├── AuthenticateClientSmDp.java
│ │ │ │ │ └── SetSMDPAddressWorker.java
│ │ │ │ ├── apdu
│ │ │ │ │ └── NotificationType.java
│ │ │ │ ├── ApduChannel.java
│ │ │ │ ├── LocalProfileAssistant.java
│ │ │ │ └── LocalProfileInfo.kt
│ │ │ │ ├── lpad
│ │ │ │ ├── progress
│ │ │ │ │ └── ProgressListener.java
│ │ │ │ ├── worker
│ │ │ │ │ ├── WorkerExchange.java
│ │ │ │ │ └── LpadWorkerExchange.java
│ │ │ │ └── LpadWorker.java
│ │ │ │ └── util
│ │ │ │ ├── TLVBean.java
│ │ │ │ ├── PropUtil.java
│ │ │ │ ├── Tools.java
│ │ │ │ ├── ToTLV.java
│ │ │ │ ├── Util.java
│ │ │ │ └── LogStub.java
│ │ ├── test
│ │ │ └── java
│ │ │ │ └── integration
│ │ │ │ └── utils
│ │ │ │ └── ReferenceData.java
│ │ └── generated
│ │ │ └── asn1
│ │ │ └── com
│ │ │ └── truphone
│ │ │ └── rsp
│ │ │ └── dto
│ │ │ └── asn1
│ │ │ ├── pkix1explicit88
│ │ │ ├── PDSName.java
│ │ │ ├── AttributeValue.java
│ │ │ ├── CommonName.java
│ │ │ ├── EmailAddress.java
│ │ │ ├── StreetAddress.java
│ │ │ ├── X121Address.java
│ │ │ ├── NetworkAddress.java
│ │ │ ├── DomainComponent.java
│ │ │ ├── DistinguishedName.java
│ │ │ ├── UniquePostalName.java
│ │ │ ├── OrganizationName.java
│ │ │ ├── X520SerialNumber.java
│ │ │ ├── X520countryName.java
│ │ │ ├── X520dnQualifier.java
│ │ │ ├── TeletexCommonName.java
│ │ │ ├── PostOfficeBoxAddress.java
│ │ │ ├── PosteRestanteAddress.java
│ │ │ ├── TerminalIdentifier.java
│ │ │ ├── LocalPostalAttributes.java
│ │ │ ├── NumericUserIdentifier.java
│ │ │ ├── OrganizationalUnitName.java
│ │ │ ├── TeletexOrganizationName.java
│ │ │ ├── PhysicalDeliveryOfficeName.java
│ │ │ ├── ExtensionORAddressComponents.java
│ │ │ ├── PhysicalDeliveryOfficeNumber.java
│ │ │ ├── PhysicalDeliveryPersonalName.java
│ │ │ ├── TeletexOrganizationalUnitName.java
│ │ │ ├── PhysicalDeliveryOrganizationName.java
│ │ │ ├── AttributeType.java
│ │ │ ├── ExtensionPhysicalDeliveryAddressComponents.java
│ │ │ ├── Version.java
│ │ │ ├── TerminalType.java
│ │ │ ├── UniqueIdentifier.java
│ │ │ └── CertificateSerialNumber.java
│ │ │ ├── rspdefinitions
│ │ │ ├── Octet1.java
│ │ │ ├── Octet2.java
│ │ │ ├── Octet8.java
│ │ │ ├── Octet16.java
│ │ │ ├── Octet32.java
│ │ │ ├── OctetTo16.java
│ │ │ ├── ExpirationDate.java
│ │ │ ├── VersionType.java
│ │ │ ├── TransactionId.java
│ │ │ ├── IconType.java
│ │ │ ├── PprIds.java
│ │ │ ├── ErrorReason.java
│ │ │ ├── BppCommandId.java
│ │ │ ├── ProfileClass.java
│ │ │ ├── ProfileState.java
│ │ │ ├── PartialCrlNumber.java
│ │ │ ├── DownloadErrorCode.java
│ │ │ ├── RspCapability.java
│ │ │ ├── UICCCapability.java
│ │ │ ├── CancelSessionReason.java
│ │ │ ├── CertificateInfo.java
│ │ │ ├── LoadCRLResponseError.java
│ │ │ ├── ProfileInfoListError.java
│ │ │ ├── AuthenticateErrorCode.java
│ │ │ ├── NotificationEvent.java
│ │ │ ├── TotalPartialCrlNumber.java
│ │ │ └── Iccid.java
│ │ │ └── pkix1implicit88
│ │ │ ├── CPSuri.java
│ │ │ ├── FreshestCRL.java
│ │ │ ├── IssuerAltName.java
│ │ │ ├── KeyIdentifier.java
│ │ │ ├── SubjectAltName.java
│ │ │ ├── InvalidityDate.java
│ │ │ ├── CertificateIssuer.java
│ │ │ ├── SubjectKeyIdentifier.java
│ │ │ ├── CertPolicyId.java
│ │ │ ├── KeyPurposeId.java
│ │ │ ├── PolicyQualifierId.java
│ │ │ ├── HoldInstructionCode.java
│ │ │ ├── CRLReason.java
│ │ │ ├── CRLNumber.java
│ │ │ ├── SkipCerts.java
│ │ │ ├── BaseDistance.java
│ │ │ ├── KeyUsage.java
│ │ │ ├── BaseCRLNumber.java
│ │ │ ├── ReasonFlags.java
│ │ │ └── InhibitAnyPolicy.java
│ │ ├── .project
│ │ └── build.gradle
├── gradle
│ └── wrapper
│ │ ├── gradle-wrapper.jar
│ │ └── gradle-wrapper.properties
├── .gitignore
├── build.gradle
├── settings.gradle
├── privapp_whitelist_im.angry.openeuicc.xml
├── COPYING
├── gradle.properties
└── Android.bp
├── openeuicc-deps
├── repository
│ └── com
│ │ ├── beanit
│ │ └── asn1bean
│ │ │ ├── 1.13.0
│ │ │ ├── asn1bean-1.13.0.jar.md5
│ │ │ ├── asn1bean-1.13.0.pom.md5
│ │ │ ├── asn1bean-1.13.0-sources.jar.md5
│ │ │ ├── asn1bean-1.13.0.jar.sha1
│ │ │ ├── asn1bean-1.13.0.pom.sha1
│ │ │ ├── asn1bean-1.13.0-sources.jar.sha1
│ │ │ ├── asn1bean-1.13.0.jar
│ │ │ ├── asn1bean-1.13.0-sources.jar
│ │ │ └── asn1bean-1.13.0.pom
│ │ │ └── maven-metadata.xml
│ │ ├── google
│ │ └── zxing
│ │ │ ├── core
│ │ │ ├── 3.4.1
│ │ │ │ ├── core-3.4.1.jar.md5
│ │ │ │ ├── core-3.4.1.pom.md5
│ │ │ │ ├── core-3.4.1.jar.sha1
│ │ │ │ ├── core-3.4.1.pom.sha1
│ │ │ │ └── core-3.4.1.jar
│ │ │ └── maven-metadata.xml
│ │ │ └── zxing-parent
│ │ │ ├── 3.4.1
│ │ │ ├── zxing-parent-3.4.1.pom.md5
│ │ │ └── zxing-parent-3.4.1.pom.sha1
│ │ │ └── maven-metadata.xml
│ │ └── journeyapps
│ │ └── zxing-android-embedded
│ │ ├── 4.3.0
│ │ ├── zxing-android-embedded-4.3.0.aar.md5
│ │ ├── zxing-android-embedded-4.3.0.pom.md5
│ │ ├── zxing-android-embedded-4.3.0-sources.jar.md5
│ │ ├── zxing-android-embedded-4.3.0.aar.sha1
│ │ ├── zxing-android-embedded-4.3.0.pom.sha1
│ │ ├── zxing-android-embedded-4.3.0-sources.jar.sha1
│ │ ├── zxing-android-embedded-4.3.0.aar
│ │ ├── zxing-android-embedded-4.3.0-sources.jar
│ │ └── zxing-android-embedded-4.3.0.pom
│ │ └── maven-metadata.xml
└── Android.bp
└── README.md
/openeuicc/app/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-stub/.gitignore:
--------------------------------------------------------------------------------
1 | /build
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/consumer-rules.pro:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.jar.md5:
--------------------------------------------------------------------------------
1 | 1459da0cc0db5a21405c93d47f8e6949
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.pom.md5:
--------------------------------------------------------------------------------
1 | b54a39f7109deb7bfc5a969d94ba9e06
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.jar.md5:
--------------------------------------------------------------------------------
1 | fbad9e0bca18ae75897e0b748788ceda
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.pom.md5:
--------------------------------------------------------------------------------
1 | d4e09cffb7bf2f15eb9c98eb9862378b
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.jar.sha1:
--------------------------------------------------------------------------------
1 | 1869da97e9b2b60b5ff2fcaf55899174b93ae25d
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.pom.sha1:
--------------------------------------------------------------------------------
1 | 5e394e62598655ec542a69b8426abe8fd6fef182
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0-sources.jar.md5:
--------------------------------------------------------------------------------
1 | 22b6ed34e3efb36d22499e062385ae11
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.jar.sha1:
--------------------------------------------------------------------------------
1 | 34d6af3f9b933b3f342799bd62d4adc419fd1f81
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.pom.sha1:
--------------------------------------------------------------------------------
1 | 44d5455c1eddbc00b51e70775d2e92328c4b795d
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/zxing-parent/3.4.1/zxing-parent-3.4.1.pom.md5:
--------------------------------------------------------------------------------
1 | 2021d3846768c7a61afe388286a404ca
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0-sources.jar.sha1:
--------------------------------------------------------------------------------
1 | 117f036545eab0f28a6f87fad9c9928d95f3de8c
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/zxing-parent/3.4.1/zxing-parent-3.4.1.pom.sha1:
--------------------------------------------------------------------------------
1 | e95c34647f02558c0e02d79dc6784bae52c89085
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.aar.md5:
--------------------------------------------------------------------------------
1 | 028ee569bc054c580ac718864f9d1c5a
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.pom.md5:
--------------------------------------------------------------------------------
1 | 17e3a5381e84795d5b54a14a968ceeeb
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0-sources.jar.md5:
--------------------------------------------------------------------------------
1 | baf4160813d510ffd1f4817c1a7b6a0b
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.aar.sha1:
--------------------------------------------------------------------------------
1 | 148ce3deba556cc15fd0b2b32fd3d0c842d91f28
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.pom.sha1:
--------------------------------------------------------------------------------
1 | 6e3110eab845aa4862362e8aa44d5ad55d533ef2
--------------------------------------------------------------------------------
/openeuicc/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0-sources.jar.sha1:
--------------------------------------------------------------------------------
1 | f4f0504d30c6674a08b1327cc22a3f6ce4a1a166
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/.settings/org.eclipse.jdt.apt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.apt.aptEnabled=false
3 |
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/ic_launcher-playstore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/ic_launcher-playstore.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/ic_launcher-playstore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/ic_launcher-playstore.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/.settings/org.eclipse.m2e.core.prefs:
--------------------------------------------------------------------------------
1 | activeProfiles=
2 | eclipse.preferences.version=1
3 | resolveWorkspaceProjects=true
4 | version=1
5 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/MsgBody.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message;
2 |
3 | public interface MsgBody {
4 | }
5 |
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-hdpi/ic_launcher_esimm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-hdpi/ic_launcher_esimm.png
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-mdpi/ic_launcher_esimm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-mdpi/ic_launcher_esimm.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher.png
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-xhdpi/ic_launcher_esimm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-xhdpi/ic_launcher_esimm.png
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-xxhdpi/ic_launcher_esimm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-xxhdpi/ic_launcher_esimm.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_esimm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/debug/res/mipmap-xxxhdpi/ic_launcher_esimm.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher_round.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher_round.png
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/progress/ProgressPhase.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa.progress;
2 |
3 | public enum ProgressPhase {
4 | RUNNING
5 | }
6 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc-deps/repository/com/google/zxing/core/3.4.1/core-3.4.1.jar
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-hdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-mdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher_foreground.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc/app/src/release/res/mipmap-xxxhdpi/ic_launcher_foreground.png
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.jar
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/ApduTransmittedListener.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa;
2 |
3 | public interface ApduTransmittedListener {
4 | void onApduTransmitted();
5 | }
6 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0-sources.jar
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/test/java/integration/utils/ReferenceData.java:
--------------------------------------------------------------------------------
1 | package integration.utils;
2 |
3 | public interface ReferenceData {
4 |
5 | String VALID_EID = "bf3e125a10890440500010006800000000000001709000";
6 | }
7 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.aar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.aar
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0-sources.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/naz664/packages_apps_openeuicc/HEAD/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0-sources.jar
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/.settings/org.eclipse.core.resources.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | encoding//src/main/java=UTF-8
3 | encoding//src/main/resources=UTF-8
4 | encoding//src/test/java=UTF-8
5 | encoding//target/generated-sources/asn1=UTF-8
6 | encoding/=UTF-8
7 |
--------------------------------------------------------------------------------
/openeuicc/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Wed Jun 08 13:28:20 EDT 2022
2 | distributionBase=GRADLE_USER_HOME
3 | distributionUrl=https\://services.gradle.org/distributions/gradle-7.4.2-bin.zip
4 | distributionPath=wrapper/dists
5 | zipStorePath=wrapper/dists
6 | zipStoreBase=GRADLE_USER_HOME
7 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/CancelSessionResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 |
4 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
5 |
6 | public class CancelSessionResp extends ResponseMsgBody {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/ReleaseProfileResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 |
4 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
5 |
6 | public class ReleaseProfileResp extends ResponseMsgBody {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/layout/spinner_item.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-stub/src/main/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable/ic_launcher_background.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/HandleNotificationResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 |
4 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
5 |
6 | public class HandleNotificationResp extends ResponseMsgBody {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/impl/download/SbppApdu.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa.impl.download;
2 |
3 | public enum SbppApdu {
4 | INITIALIZE_SECURE_CHANNEL,
5 | CONFIGURE_ISDPA,
6 | STORE_METADATA,
7 | REPLACE_SESSIONS_KEYS,
8 | BOUND_PROFILE_PACKAGE
9 | }
10 |
--------------------------------------------------------------------------------
/openeuicc/.gitignore:
--------------------------------------------------------------------------------
1 | *.iml
2 | .gradle
3 | /local.properties
4 | /.idea/caches
5 | /.idea/libraries
6 | /.idea/modules.xml
7 | /.idea/workspace.xml
8 | /.idea/navEditor.xml
9 | /.idea/assetWizardSettings.xml
10 | .DS_Store
11 | /build
12 | /captures
13 | .externalNativeBuild
14 | .cxx
15 | local.properties
16 | /libs/**/build
17 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/values/colors.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | #E0E0E0
4 | #D81B60
5 | #AD1457
6 | #FF000000
7 | #FFFFFFFF
8 |
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-anydpi-v26/ic_launcher.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable-v24/ic_launcher_foreground.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/openeuicc/app/src/release/res/mipmap-anydpi-v26/ic_launcher_round.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/HandleDownloadProgressInfoResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 |
4 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
5 |
6 | public class HandleDownloadProgressInfoResp extends ResponseMsgBody {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpad/progress/ProgressListener.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpad.progress;
2 |
3 | public interface ProgressListener {
4 |
5 | void onAction(String phase,
6 | String step,
7 | Double percentage,
8 | String message);
9 | }
10 |
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-stub/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.android.library'
3 | }
4 |
5 | android {
6 | compileSdk 31
7 | }
8 |
9 | java {
10 | sourceCompatibility = JavaVersion.VERSION_1_7
11 | targetCompatibility = JavaVersion.VERSION_1_7
12 | }
13 |
14 | dependencies {
15 | implementation 'org.jetbrains:annotations:15.0'
16 | }
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/xml/network_security_config.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable/ic_add.xml:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/ui/LuiActivity.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.ui
2 |
3 | import android.content.Intent
4 | import androidx.appcompat.app.AppCompatActivity
5 |
6 | class LuiActivity : AppCompatActivity() {
7 | override fun onStart() {
8 | super.onStart()
9 | startActivity(Intent(this, MainActivity::class.java))
10 | finish()
11 | }
12 | }
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/menu/fragment_profile_rename.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.beanit
4 | asn1bean
5 |
6 | 1.13.0
7 |
8 | 1.13.0
9 |
10 | 20220731022216
11 |
12 |
13 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/core/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.google.zxing
4 | core
5 |
6 | 3.4.1
7 |
8 | 3.4.1
9 |
10 | 20220731022100
11 |
12 |
13 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/google/zxing/zxing-parent/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.google.zxing
4 | zxing-parent
5 |
6 | 3.4.1
7 |
8 | 3.4.1
9 |
10 | 20220731022100
11 |
12 |
13 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/maven-metadata.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | com.journeyapps
4 | zxing-android-embedded
5 |
6 | 4.3.0
7 |
8 | 4.3.0
9 |
10 | 20220731022124
11 |
12 |
13 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/base/RequestMsgBody.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request.base;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgBody;
5 |
6 | import java.security.InvalidParameterException;
7 |
8 | public abstract class RequestMsgBody implements MsgBody {
9 |
10 | public void checkParameters() throws InvalidParameterException {
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | ## Openeuicc
2 | This provide E-sim support on E-sim supported android devices on gsi's.
3 |
4 | ## How to use this file ?
5 |
6 | Clone this repo,
7 | copy openeuicc and openeuicc-deps to rom's -> packages/apps
8 |
9 | And add these lines in GSI Makefile:
10 |
11 | PRODUCT_PACKAGES += \
12 | OpenEUICC \
13 |
14 |
15 | ## Credits
16 | - [Peter Cai](https://github.com/PeterCxy)
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/MsgType.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message;
2 |
3 | import java.lang.annotation.ElementType;
4 | import java.lang.annotation.Retention;
5 | import java.lang.annotation.RetentionPolicy;
6 | import java.lang.annotation.Target;
7 |
8 | @Target(ElementType.TYPE)
9 | @Retention(RetentionPolicy.RUNTIME)
10 | public @interface MsgType {
11 | String value();
12 | }
13 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/apdu/NotificationType.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa.apdu;
2 |
3 | public enum NotificationType {
4 | ALL(""), INSTALLED("80"), ENABLED("40"), DISABLED("20"), DELETED("10");
5 |
6 | private final String text;
7 |
8 | NotificationType(final String text) {
9 | this.text = text;
10 | }
11 |
12 | @Override
13 | public String toString() {
14 | return text;
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable/ic_check_black.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/impl/download/CloseResources.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa.impl.download;
2 |
3 | import java.io.InputStream;
4 |
5 | public class CloseResources {
6 |
7 | static void closeResources(InputStream is) {
8 |
9 | if (is != null) {
10 | try {
11 | is.close();
12 | } catch (Exception ignored) {
13 | }
14 | }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/openeuicc/app/src/test/java/im/angry/openeuicc/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/openeuicc/build.gradle:
--------------------------------------------------------------------------------
1 | // Top-level build file where you can add configuration options common to all sub-projects/modules.
2 | plugins {
3 | id 'com.android.application' version '7.2.1' apply false
4 | id 'com.android.library' version '7.2.1' apply false
5 | id 'org.jetbrains.kotlin.android' version '1.6.21' apply false
6 | id 'org.jetbrains.kotlin.multiplatform' version '1.6.21' apply false
7 | }
8 |
9 | task clean(type: Delete) {
10 | delete rootProject.buildDir
11 | }
--------------------------------------------------------------------------------
/openeuicc/app/release/output-metadata.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": 3,
3 | "artifactType": {
4 | "type": "APK",
5 | "kind": "Directory"
6 | },
7 | "applicationId": "im.angry.openeuicc",
8 | "variantName": "release",
9 | "elements": [
10 | {
11 | "type": "SINGLE",
12 | "filters": [],
13 | "attributes": [],
14 | "versionCode": 1,
15 | "versionName": "1.0",
16 | "outputFile": "app-release.apk"
17 | }
18 | ],
19 | "elementType": "File"
20 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpad/worker/WorkerExchange.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpad.worker;
2 |
3 | /**
4 | * Message used within Workers containing all necessary data
5 | * @param Data to be used on Workers operations
6 | */
7 | public interface WorkerExchange {
8 | /**
9 | * Get data to be used on Workers operations
10 | *
11 | * @return The data to be used on Workers operations
12 | */
13 | T getBody();
14 | }
15 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/base/ResponseMsgBody.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response.base;
2 |
3 | import com.truphone.es9plus.message.MsgBody;
4 |
5 | public abstract class ResponseMsgBody implements MsgBody {
6 | private HeaderResp header;
7 |
8 | public HeaderResp getHeader() {
9 | return header;
10 | }
11 |
12 | public void setHeader(HeaderResp header) {
13 | this.header = header;
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/DownloadOrderResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
4 |
5 | public class DownloadOrderResp extends ResponseMsgBody {
6 | private String iccid;
7 |
8 | public String getIccid() {
9 | return iccid;
10 | }
11 |
12 | public void setIccid(String iccid) {
13 | this.iccid = iccid;
14 | }
15 |
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/ApduChannel.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa;
2 |
3 | import java.util.List;
4 |
5 | public interface ApduChannel {
6 | String transmitAPDU(String apdu);
7 |
8 | String transmitAPDUS(List apdus);
9 |
10 | void sendStatus();
11 |
12 | void setApduTransmittedListener(ApduTransmittedListener apduTransmittedListener);
13 |
14 | void removeApduTransmittedListener(ApduTransmittedListener apduTransmittedListener);
15 | }
16 |
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/src/test/java/im/angry/openeuicc/hidden_apis_shim/ExampleUnitTest.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.hidden_apis_shim
2 |
3 | import org.junit.Test
4 |
5 | import org.junit.Assert.*
6 |
7 | /**
8 | * Example local unit test, which will execute on the development machine (host).
9 | *
10 | * See [testing documentation](http://d.android.com/tools/testing).
11 | */
12 | class ExampleUnitTest {
13 | @Test
14 | fun addition_isCorrect() {
15 | assertEquals(4, 2 + 2)
16 | }
17 | }
--------------------------------------------------------------------------------
/openeuicc/settings.gradle:
--------------------------------------------------------------------------------
1 | pluginManagement {
2 | repositories {
3 | gradlePluginPortal()
4 | google()
5 | mavenCentral()
6 | }
7 | }
8 | dependencyResolutionManagement {
9 | repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
10 | repositories {
11 | google()
12 | mavenCentral()
13 | }
14 | }
15 | rootProject.name = "OpenEUICC"
16 | include ':app', ':libs:lpad-sm-dp-plus-connector'
17 | include ':libs:hidden-apis-stub'
18 | include ':libs:hidden-apis-shim'
19 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpad/LpadWorker.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpad;
2 |
3 | import com.truphone.lpad.worker.WorkerExchange;
4 |
5 | /**
6 | * Representation of all classes that contains the implementation of LPAD operations
7 | */
8 | public interface LpadWorker {
9 |
10 | /**
11 | * Execute operation
12 | *
13 | * @param input Input parameters
14 | * @return Result of the LPAD operation
15 | */
16 | E run(T input);
17 | }
--------------------------------------------------------------------------------
/openeuicc-deps/Android.bp:
--------------------------------------------------------------------------------
1 | java_import {
2 | name: "asn1bean-prebuilt-jar",
3 | jars: ["repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.jar"],
4 | }
5 |
6 | java_import {
7 | name: "zxing-core-prebuilt-jar",
8 | jars: ["repository/com/google/zxing/core/3.4.1/core-3.4.1.jar"],
9 | }
10 |
11 | android_library_import {
12 | name: "zxing-android-embedded-prebuilt-aar",
13 | aars: ["repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.aar"],
14 | sdk_version: "current",
15 | }
16 |
--------------------------------------------------------------------------------
/openeuicc/privapp_whitelist_im.angry.openeuicc.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/TLVBean.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 | public class TLVBean {
4 | private String taglen;
5 | private String value;
6 |
7 | public TLVBean(String taglen, String value) {
8 | super();
9 | this.taglen = taglen;
10 | this.value = value;
11 | }
12 | public String getTaglen() {
13 | return taglen;
14 | }
15 | public String getValue() {
16 | return value;
17 | }
18 | public void setValue(String value) {
19 | this.value = value;
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/menu/profile_options.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/.settings/org.eclipse.jdt.core.prefs:
--------------------------------------------------------------------------------
1 | eclipse.preferences.version=1
2 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
3 | org.eclipse.jdt.core.compiler.compliance=11
4 | org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
5 | org.eclipse.jdt.core.compiler.problem.forbiddenReference=warning
6 | org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=ignore
7 | org.eclipse.jdt.core.compiler.processAnnotations=disabled
8 | org.eclipse.jdt.core.compiler.release=disabled
9 | org.eclipse.jdt.core.compiler.source=11
10 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable/ic_menu_black.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/ReleaseProfileReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es2plus/releaseProfile")
8 | public class ReleaseProfileReq extends RequestMsgBody {
9 | private String iccid;
10 |
11 | public String getIccid() {
12 | return iccid;
13 | }
14 |
15 | public void setIccid(String iccid) {
16 | this.iccid = iccid;
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/openeuicc/COPYING:
--------------------------------------------------------------------------------
1 | Copyright 2022 Peter Cai & Pierre-Hugues Husson
2 |
3 | This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
4 |
5 | This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
6 |
7 | You should have received a copy of the GNU General Public License along with this program. If not, see .
8 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/HttpResponse.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus;
2 |
3 | public class HttpResponse {
4 | private String content;
5 | private int statusCode;
6 |
7 | public String getContent() {
8 |
9 | return content;
10 | }
11 |
12 | public void setContent(String content) {
13 |
14 | this.content = content;
15 | }
16 |
17 | public int getStatusCode() {
18 |
19 | return statusCode;
20 | }
21 |
22 | public void setStatusCode(int statusCode) {
23 |
24 | this.statusCode = statusCode;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/util/StringUtils.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.util
2 |
3 | fun hexStringToByteArray(str: String): ByteArray {
4 | val length = str.length / 2
5 | val out = ByteArray(length)
6 | for (i in 0 until length) {
7 | val i2 = i * 2
8 | out[i] = str.substring(i2, i2 + 2).toInt(16).toByte()
9 | }
10 | return out
11 | }
12 | fun byteArrayToHex(arr: ByteArray): String {
13 | val sb = StringBuilder()
14 | val length = arr.size
15 | for (i in 0 until length) {
16 | sb.append(String.format("%02X", arr[i]))
17 | }
18 | return sb.toString()
19 | }
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/menu/fragment_profile_download.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/menu/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/base/NotificationPointStatus.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response.base;
2 |
3 | public class NotificationPointStatus {
4 |
5 | private String status;
6 |
7 | private StatusCodeData statusCodeData;
8 |
9 | public String getStatus() {
10 | return status;
11 | }
12 |
13 | public void setStatus(String status) {
14 | this.status = status;
15 | }
16 |
17 | public StatusCodeData getStatusCodeData() {
18 | return statusCodeData;
19 | }
20 |
21 | public void setStatusCodeData(StatusCodeData statusCodeData) {
22 | this.statusCodeData = statusCodeData;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/.project:
--------------------------------------------------------------------------------
1 |
2 |
3 | lpad-sm-dp-plus-connector
4 |
5 |
6 |
7 |
8 |
9 | org.eclipse.jdt.core.javabuilder
10 |
11 |
12 |
13 |
14 | org.eclipse.m2e.core.maven2Builder
15 |
16 |
17 |
18 |
19 |
20 | org.eclipse.jdt.core.javanature
21 | org.eclipse.m2e.core.maven2Nature
22 |
23 |
24 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/HandleNotificationReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es9plus/handleNotification")
8 | public class HandleNotificationReq extends RequestMsgBody {
9 | private String pendingNotification;
10 |
11 | public String getPendingNotification() {
12 | return pendingNotification;
13 | }
14 |
15 | public void setPendingNotification(String pendingNotification) {
16 | this.pendingNotification = pendingNotification;
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/base/HeaderResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response.base;
2 |
3 | public class HeaderResp {
4 | private FunctionExecutionStatus functionExecutionStatus;
5 |
6 | public HeaderResp(FunctionExecutionStatus functionExecutionStatus) {
7 | super();
8 | this.functionExecutionStatus = functionExecutionStatus;
9 | }
10 |
11 | public FunctionExecutionStatus getFunctionExecutionStatus() {
12 | return functionExecutionStatus;
13 | }
14 |
15 | public void setFunctionExecutionStatus(FunctionExecutionStatus functionExecutionStatus) {
16 | this.functionExecutionStatus = functionExecutionStatus;
17 | }
18 |
19 | }
20 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpad/worker/LpadWorkerExchange.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpad.worker;
2 |
3 | /**
4 | * Message used within LPAD Workers containing all necessary data
5 | *
6 | * @param Data to be used on LPAD Workers operations
7 | */
8 | public class LpadWorkerExchange implements WorkerExchange {
9 |
10 | private final T body;
11 |
12 | public LpadWorkerExchange(final T body) {
13 | this.body = body;
14 | }
15 |
16 | /**
17 | * Get data to be used on LPAD Workers operations
18 | *
19 | * @return The data to be used on LPAD Workers operations
20 | */
21 | @Override
22 | public T getBody() {
23 | return this.body;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/core/EuiccChannel.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.core
2 |
3 | import com.truphone.lpa.LocalProfileAssistant
4 |
5 | // A custom type to avoid compatibility issues with UiccCardInfo / UiccPortInfo
6 | data class EuiccChannelInfo(
7 | val slotId: Int,
8 | val cardId: Int,
9 | val name: String,
10 | val imei: String,
11 | val removable: Boolean
12 | )
13 |
14 | abstract class EuiccChannel(
15 | info: EuiccChannelInfo
16 | ) {
17 | val slotId = info.slotId
18 | val cardId = info.cardId
19 | val name = info.name
20 | val imei = info.imei
21 | val removable = info.removable
22 |
23 | abstract val lpa: LocalProfileAssistant
24 | abstract val valid: Boolean
25 |
26 | abstract fun close()
27 | }
28 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/drawable/ic_scan_black.xml:
--------------------------------------------------------------------------------
1 |
7 |
10 |
11 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/OpenEuiccApplication.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc
2 |
3 | import android.app.Application
4 | import android.telephony.SubscriptionManager
5 | import android.telephony.TelephonyManager
6 | import im.angry.openeuicc.core.EuiccChannelManager
7 |
8 | class OpenEuiccApplication : Application() {
9 | val telephonyManager by lazy {
10 | getSystemService(TelephonyManager::class.java)!!
11 | }
12 |
13 | val euiccChannelManager by lazy {
14 | EuiccChannelManager(this)
15 | }
16 |
17 | val subscriptionManager by lazy {
18 | getSystemService(SubscriptionManager::class.java)!!
19 | }
20 |
21 | override fun onCreate() {
22 | super.onCreate()
23 | euiccChannelManager.closeAllStaleChannels()
24 | }
25 | }
--------------------------------------------------------------------------------
/openeuicc/app/src/androidTest/java/im/angry/openeuicc/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals("im.angry.openeuicc", appContext.packageName)
23 | }
24 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/GetBoundProfilePackageResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 |
4 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
5 |
6 | public class GetBoundProfilePackageResp extends ResponseMsgBody {
7 | private String transactionID;
8 | private String boundProfilePackage;
9 |
10 | public String getTransactionID() {
11 | return transactionID;
12 | }
13 |
14 | public void setTransactionID(String transactionID) {
15 | this.transactionID = transactionID;
16 | }
17 |
18 | public String getBoundProfilePackage() {
19 | return boundProfilePackage;
20 | }
21 |
22 | public void setBoundProfilePackage(String boundProfilePackage) {
23 | this.boundProfilePackage = boundProfilePackage;
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/openeuicc/app/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/proguard-rules.pro:
--------------------------------------------------------------------------------
1 | # Add project specific ProGuard rules here.
2 | # You can control the set of applied configuration files using the
3 | # proguardFiles setting in build.gradle.
4 | #
5 | # For more details, see
6 | # http://developer.android.com/guide/developing/tools/proguard.html
7 |
8 | # If your project uses WebView with JS, uncomment the following
9 | # and specify the fully qualified class name to the JavaScript interface
10 | # class:
11 | #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12 | # public *;
13 | #}
14 |
15 | # Uncomment this to preserve the line number information for
16 | # debugging stack traces.
17 | #-keepattributes SourceFile,LineNumberTable
18 |
19 | # If you keep the line number information, uncomment this to
20 | # hide the original source file name.
21 | #-renamesourcefileattribute SourceFile
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/ConfirmOrderResp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response;
2 |
3 | import com.truphone.es9plus.message.response.base.ResponseMsgBody;
4 |
5 | public class ConfirmOrderResp extends ResponseMsgBody {
6 | private String eid;
7 | private String matchingId;
8 | private String smdpAddress;
9 |
10 | public String getEid() {
11 | return eid;
12 | }
13 |
14 | public void setEid(String eid) {
15 | this.eid = eid;
16 | }
17 |
18 | public String getMatchingId() {
19 | return matchingId;
20 | }
21 |
22 | public void setMatchingId(String matchingId) {
23 | this.matchingId = matchingId;
24 | }
25 |
26 | public String getSmdpAddress() {
27 | return smdpAddress;
28 | }
29 |
30 | public void setSmdpAddress(String smdpAddress) {
31 | this.smdpAddress = smdpAddress;
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/src/androidTest/java/im/angry/openeuicc/hidden_apis_shim/ExampleInstrumentedTest.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.hidden_apis_shim
2 |
3 | import androidx.test.platform.app.InstrumentationRegistry
4 | import androidx.test.ext.junit.runners.AndroidJUnit4
5 |
6 | import org.junit.Test
7 | import org.junit.runner.RunWith
8 |
9 | import org.junit.Assert.*
10 |
11 | /**
12 | * Instrumented test, which will execute on an Android device.
13 | *
14 | * See [testing documentation](http://d.android.com/tools/testing).
15 | */
16 | @RunWith(AndroidJUnit4::class)
17 | class ExampleInstrumentedTest {
18 | @Test
19 | fun useAppContext() {
20 | // Context of the app under test.
21 | val appContext = InstrumentationRegistry.getInstrumentation().targetContext
22 | assertEquals("im.angry.openeuicc.hidden_apis_shim.test", appContext.packageName)
23 | }
24 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/PropUtil.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 | import java.util.Properties;
4 |
5 | public class PropUtil {
6 |
7 |
8 | public static String getMandatoryProperty(final Properties props,
9 | final String key) {
10 | if (!props.containsKey(key)) {
11 | throw new IllegalArgumentException("mandatory property missing: "
12 | + key);
13 | }
14 | return props.getProperty(key);
15 | }
16 |
17 | public static int getIntProperty(final Properties props, final String key,
18 | final int defaultValue) {
19 | if (props.containsKey(key)) {
20 | try {
21 | return Integer.decode(props.getProperty(key));
22 | } catch (NumberFormatException e) {
23 | throw new IllegalArgumentException(
24 | "syntax error in int property: " + key, e);
25 | }
26 | } else {
27 | return defaultValue;
28 | }
29 | }
30 |
31 | }
32 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/raw/symantec_gsma_rspv2_root_ci1:
--------------------------------------------------------------------------------
1 | -----BEGIN CERTIFICATE-----
2 | MIICSTCCAe+gAwIBAgIQbmhWeneg7nyF7hg5Y9+qejAKBggqhkjOPQQDAjBEMRgw
3 | FgYDVQQKEw9HU00gQXNzb2NpYXRpb24xKDAmBgNVBAMTH0dTTSBBc3NvY2lhdGlv
4 | biAtIFJTUDIgUm9vdCBDSTEwIBcNMTcwMjIyMDAwMDAwWhgPMjA1MjAyMjEyMzU5
5 | NTlaMEQxGDAWBgNVBAoTD0dTTSBBc3NvY2lhdGlvbjEoMCYGA1UEAxMfR1NNIEFz
6 | c29jaWF0aW9uIC0gUlNQMiBSb290IENJMTBZMBMGByqGSM49AgEGCCqGSM49AwEH
7 | A0IABJ1qutL0HCMX52GJ6/jeibsAqZfULWj/X10p/Min6seZN+hf5llovbCNuB2n
8 | unLz+O8UD0SUCBUVo8e6n9X1TuajgcAwgb0wDgYDVR0PAQH/BAQDAgEGMA8GA1Ud
9 | EwEB/wQFMAMBAf8wEwYDVR0RBAwwCogIKwYBBAGC6WAwFwYDVR0gAQH/BA0wCzAJ
10 | BgdngRIBAgEAME0GA1UdHwRGMEQwQqBAoD6GPGh0dHA6Ly9nc21hLWNybC5zeW1h
11 | dXRoLmNvbS9vZmZsaW5lY2EvZ3NtYS1yc3AyLXJvb3QtY2kxLmNybDAdBgNVHQ4E
12 | FgQUgTcPUSXQsdQI1MOyMubSXnlb6/swCgYIKoZIzj0EAwIDSAAwRQIgIJdYsOMF
13 | WziPK7l8nh5mu0qiRiVf25oa9ullG/OIASwCIQDqCmDrYf+GziHXBOiwJwnBaeBO
14 | aFsiLzIEOaUuZwdNUw==
15 | -----END CERTIFICATE-----
16 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/GetBoundProfilePackageReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es9plus/getBoundProfilePackage")
8 | public class GetBoundProfilePackageReq extends RequestMsgBody {
9 | private String transactionId;
10 | private String prepareDownloadResponse;
11 |
12 | public String getTransactionId() {
13 | return transactionId;
14 | }
15 |
16 | public void setTransactionId(String transactionId) {
17 | this.transactionId = transactionId;
18 | }
19 |
20 | public String getPrepareDownloadResponse() {
21 | return prepareDownloadResponse;
22 | }
23 |
24 | public void setPrepareDownloadResponse(String prepareDownloadResponse) {
25 | this.prepareDownloadResponse = prepareDownloadResponse;
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/base/FunctionExecutionStatus.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response.base;
2 |
3 | public class FunctionExecutionStatus {
4 | private String status;
5 | private StatusCodeData statusCodeData;
6 |
7 | public FunctionExecutionStatus(String status) {
8 | super();
9 | this.status = status;
10 | }
11 |
12 | public FunctionExecutionStatus(String status, StatusCodeData statusCodeData) {
13 | super();
14 | this.status = status;
15 | this.statusCodeData = statusCodeData;
16 | }
17 |
18 | public String getStatus() {
19 | return status;
20 | }
21 |
22 | public void setStatus(String status) {
23 | this.status = status;
24 | }
25 |
26 | public StatusCodeData getStatusCodeData() {
27 | return statusCodeData;
28 | }
29 |
30 | public void setStatusCodeData(StatusCodeData statusCodeData) {
31 | this.statusCodeData = statusCodeData;
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/AuthenticateClientReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es9plus/authenticateClient")
8 | public class AuthenticateClientReq extends RequestMsgBody {
9 | private String transactionId;
10 | private String authenticateServerResponse;
11 |
12 | public String getTransactionId() {
13 | return transactionId;
14 | }
15 |
16 | public void setTransactionId(String transactionId) {
17 | this.transactionId = transactionId;
18 | }
19 |
20 | public String getAuthenticateServerResponse() {
21 | return authenticateServerResponse;
22 | }
23 |
24 | public void setAuthenticateServerResponse(String authenticateServerResponse) {
25 | this.authenticateServerResponse = authenticateServerResponse;
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/Tools.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 | public class Tools {
4 |
5 | public static String itoa(int value, int len) {
6 | String result = Integer.toHexString(value).toUpperCase();
7 | int rLen = result.length();
8 | len = 2 * len;
9 | if (rLen > len) {
10 | return result.substring(rLen - len, rLen);
11 | }
12 | if (rLen == len) {
13 | return result;
14 | }
15 | StringBuffer strBuff = new StringBuffer(result);
16 | for (int i = 0; i < len - rLen; i++) {
17 | strBuff.insert(0, '0');
18 | }
19 | return strBuff.toString();
20 | }
21 |
22 | public static String toHex(String num) {
23 | String hex = Integer.toHexString(Integer.valueOf(num));
24 | if (hex.length() % 2 != 0) {
25 | hex = "0" + hex;
26 | }
27 | return hex.toUpperCase();
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PDSName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PDSName extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PDSName() {
28 | }
29 |
30 | public PDSName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/AttributeValue.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class AttributeValue extends BerAny {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public AttributeValue() {
28 | }
29 |
30 | public AttributeValue(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/CommonName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class CommonName extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public CommonName() {
28 | }
29 |
30 | public CommonName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/EmailAddress.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class EmailAddress extends BerIA5String {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public EmailAddress() {
28 | }
29 |
30 | public EmailAddress(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/StreetAddress.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class StreetAddress extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public StreetAddress() {
28 | }
29 |
30 | public StreetAddress(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/X121Address.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class X121Address extends BerNumericString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public X121Address() {
28 | }
29 |
30 | public X121Address(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/NetworkAddress.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class NetworkAddress extends X121Address {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public NetworkAddress() {
28 | }
29 |
30 | public NetworkAddress(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/core/OmapiApduChannel.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.core
2 |
3 | import android.se.omapi.Channel
4 | import com.truphone.lpa.ApduChannel
5 | import com.truphone.lpa.ApduTransmittedListener
6 | import im.angry.openeuicc.util.byteArrayToHex
7 | import im.angry.openeuicc.util.hexStringToByteArray
8 |
9 | class OmapiApduChannel(private val channel: Channel) : ApduChannel {
10 | override fun transmitAPDU(apdu: String): String =
11 | byteArrayToHex(channel.transmit(hexStringToByteArray(apdu)))
12 |
13 | override fun transmitAPDUS(apdus: MutableList): String {
14 | var res = ""
15 | for (pdu in apdus) {
16 | res = transmitAPDU(pdu)
17 | }
18 | return res
19 | }
20 |
21 | override fun sendStatus() {
22 | }
23 |
24 | override fun setApduTransmittedListener(apduTransmittedListener: ApduTransmittedListener?) {
25 | }
26 |
27 | override fun removeApduTransmittedListener(apduTransmittedListener: ApduTransmittedListener?) {
28 | }
29 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/DomainComponent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class DomainComponent extends BerIA5String {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public DomainComponent() {
28 | }
29 |
30 | public DomainComponent(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/DistinguishedName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class DistinguishedName extends RDNSequence {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public DistinguishedName() {
28 | }
29 |
30 | public DistinguishedName(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/UniquePostalName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class UniquePostalName extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public UniquePostalName() {
28 | }
29 |
30 | public UniquePostalName(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/OrganizationName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class OrganizationName extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public OrganizationName() {
28 | }
29 |
30 | public OrganizationName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/X520SerialNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class X520SerialNumber extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public X520SerialNumber() {
28 | }
29 |
30 | public X520SerialNumber(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/X520countryName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class X520countryName extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public X520countryName() {
28 | }
29 |
30 | public X520countryName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/X520dnQualifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class X520dnQualifier extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public X520dnQualifier() {
28 | }
29 |
30 | public X520dnQualifier(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/TeletexCommonName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class TeletexCommonName extends BerTeletexString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public TeletexCommonName() {
28 | }
29 |
30 | public TeletexCommonName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/impl/AuthenticateClientSmDp.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa.impl;
2 |
3 | public class AuthenticateClientSmDp {
4 | private String smdpSigned2;
5 | private String smdpSignature2;
6 | private String smdpCertificate;
7 |
8 | public AuthenticateClientSmDp() {
9 |
10 | super();
11 | }
12 |
13 | public String getSmdpSigned2() {
14 |
15 | return smdpSigned2;
16 | }
17 |
18 | public String getSmdpSignature2() {
19 |
20 | return smdpSignature2;
21 | }
22 |
23 | public String getSmdpCertificate() {
24 |
25 | return smdpCertificate;
26 | }
27 |
28 | public void setSmdpSigned2(String smdpSigned2) {
29 |
30 | this.smdpSigned2 = smdpSigned2;
31 | }
32 |
33 | public void setSmdpSignature2(String smdpSignature2) {
34 |
35 | this.smdpSignature2 = smdpSignature2;
36 | }
37 |
38 | public void setSmdpCertificate(String smdpCertificate) {
39 |
40 | this.smdpCertificate = smdpCertificate;
41 | }
42 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PostOfficeBoxAddress.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PostOfficeBoxAddress extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PostOfficeBoxAddress() {
28 | }
29 |
30 | public PostOfficeBoxAddress(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PosteRestanteAddress.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PosteRestanteAddress extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PosteRestanteAddress() {
28 | }
29 |
30 | public PosteRestanteAddress(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/TerminalIdentifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class TerminalIdentifier extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public TerminalIdentifier() {
28 | }
29 |
30 | public TerminalIdentifier(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/LocalPostalAttributes.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class LocalPostalAttributes extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public LocalPostalAttributes() {
28 | }
29 |
30 | public LocalPostalAttributes(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/util/TelephonyUtils.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.util
2 |
3 | import android.telephony.SubscriptionManager
4 | import android.telephony.TelephonyManager
5 | import com.truphone.lpa.LocalProfileInfo
6 | import java.lang.Exception
7 |
8 | val TelephonyManager.supportsDSDS: Boolean
9 | get() = supportedModemCount == 2
10 |
11 | var TelephonyManager.dsdsEnabled: Boolean
12 | get() = activeModemCount >= 2
13 | set(value) {
14 | switchMultiSimConfig(if (value) { 2 } else {1})
15 | }
16 |
17 | fun SubscriptionManager.tryRefreshCachedEuiccInfo(cardId: Int) {
18 | if (cardId != 0) {
19 | try {
20 | requestEmbeddedSubscriptionInfoListRefresh(cardId)
21 | } catch (e: Exception) {
22 | // Ignore
23 | }
24 | }
25 | }
26 |
27 | val LocalProfileInfo.displayName: String
28 | get() = nickName.ifEmpty { name }
29 |
30 | val List.operational: List
31 | get() = filter {
32 | it.profileClass == LocalProfileInfo.Clazz.Operational
33 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/NumericUserIdentifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class NumericUserIdentifier extends BerNumericString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public NumericUserIdentifier() {
28 | }
29 |
30 | public NumericUserIdentifier(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/OrganizationalUnitName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class OrganizationalUnitName extends BerPrintableString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public OrganizationalUnitName() {
28 | }
29 |
30 | public OrganizationalUnitName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/InitiateAuthenticationReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es9plus/initiateAuthentication")
8 | public class InitiateAuthenticationReq extends RequestMsgBody {
9 | private String euiccChallenge;
10 | private String euiccInfo1;
11 | private String smdpAddress;
12 |
13 | public String getEuiccChallenge() {
14 | return euiccChallenge;
15 | }
16 |
17 | public void setEuiccChallenge(String euiccChallenge) {
18 | this.euiccChallenge = euiccChallenge;
19 | }
20 |
21 | public String getEuiccInfo1() {
22 | return euiccInfo1;
23 | }
24 |
25 | public void setEuiccInfo1(String euiccInfo1) {
26 | this.euiccInfo1 = euiccInfo1;
27 | }
28 |
29 | public String getSmdpAddress() {
30 | return smdpAddress;
31 | }
32 |
33 | public void setSmdpAddress(String smdpAddress) {
34 | this.smdpAddress = smdpAddress;
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/TeletexOrganizationName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class TeletexOrganizationName extends BerTeletexString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public TeletexOrganizationName() {
28 | }
29 |
30 | public TeletexOrganizationName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PhysicalDeliveryOfficeName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PhysicalDeliveryOfficeName extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PhysicalDeliveryOfficeName() {
28 | }
29 |
30 | public PhysicalDeliveryOfficeName(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/ExtensionORAddressComponents.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class ExtensionORAddressComponents extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public ExtensionORAddressComponents() {
28 | }
29 |
30 | public ExtensionORAddressComponents(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PhysicalDeliveryOfficeNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PhysicalDeliveryOfficeNumber extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PhysicalDeliveryOfficeNumber() {
28 | }
29 |
30 | public PhysicalDeliveryOfficeNumber(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PhysicalDeliveryPersonalName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PhysicalDeliveryPersonalName extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PhysicalDeliveryPersonalName() {
28 | }
29 |
30 | public PhysicalDeliveryPersonalName(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/TeletexOrganizationalUnitName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class TeletexOrganizationalUnitName extends BerTeletexString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public TeletexOrganizationalUnitName() {
28 | }
29 |
30 | public TeletexOrganizationalUnitName(byte[] value) {
31 | super(value);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/PhysicalDeliveryOrganizationName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class PhysicalDeliveryOrganizationName extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public PhysicalDeliveryOrganizationName() {
28 | }
29 |
30 | public PhysicalDeliveryOrganizationName(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/AttributeType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class AttributeType extends BerObjectIdentifier {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public AttributeType() {
28 | }
29 |
30 | public AttributeType(byte[] code) {
31 | super(code);
32 | }
33 |
34 | public AttributeType(int[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/DownloadOrderReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 | import com.truphone.es9plus.message.MsgType;
4 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
5 |
6 | @MsgType("/gsma/rsp2/es2plus/downloadOrder")
7 | public class DownloadOrderReq extends RequestMsgBody {
8 | private String eid;
9 | private String iccid;
10 | private String profileType;
11 | private String msisdn;
12 |
13 | public String getMsisdn() {
14 | return msisdn;
15 | }
16 |
17 | public void setMsisdn(String msisdn) {
18 | this.msisdn = msisdn;
19 | }
20 |
21 | public String getEid() {
22 | return eid;
23 | }
24 |
25 | public void setEid(String eid) {
26 | this.eid = eid;
27 | }
28 |
29 | public String getIccid() {
30 | return iccid;
31 | }
32 |
33 | public void setIccid(String iccid) {
34 | this.iccid = iccid;
35 | }
36 |
37 | public String getProfileType() {
38 | return profileType;
39 | }
40 |
41 | public void setProfileType(String profileType) {
42 | this.profileType = profileType;
43 | }
44 |
45 | }
46 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/ExtensionPhysicalDeliveryAddressComponents.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class ExtensionPhysicalDeliveryAddressComponents extends PDSParameter {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public ExtensionPhysicalDeliveryAddressComponents() {
28 | }
29 |
30 | public ExtensionPhysicalDeliveryAddressComponents(byte[] code) {
31 | super(code);
32 | }
33 |
34 | }
35 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/Version.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class Version extends BerInteger {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public Version() {
28 | }
29 |
30 | public Version(byte[] code) {
31 | super(code);
32 | }
33 |
34 | public Version(BigInteger value) {
35 | super(value);
36 | }
37 |
38 | public Version(long value) {
39 | super(value);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/ui/EuiccChannelFragmentUtils.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.ui
2 |
3 | import android.os.Bundle
4 | import androidx.fragment.app.Fragment
5 | import im.angry.openeuicc.core.EuiccChannel
6 | import im.angry.openeuicc.core.EuiccChannelManager
7 | import im.angry.openeuicc.util.openEuiccApplication
8 |
9 | interface EuiccFragmentMarker
10 |
11 | fun newInstanceEuicc(clazz: Class, slotId: Int): T where T: Fragment, T: EuiccFragmentMarker {
12 | val instance = clazz.newInstance()
13 | instance.arguments = Bundle().apply {
14 | putInt("slotId", slotId)
15 | }
16 | return instance
17 | }
18 |
19 | val T.slotId: Int where T: Fragment, T: EuiccFragmentMarker
20 | get() = requireArguments().getInt("slotId")
21 |
22 | val T.euiccChannelManager: EuiccChannelManager where T: Fragment, T: EuiccFragmentMarker
23 | get() = openEuiccApplication.euiccChannelManager
24 |
25 | val T.channel: EuiccChannel where T: Fragment, T: EuiccFragmentMarker
26 | get() =
27 | euiccChannelManager.findEuiccChannelBySlotBlocking(slotId)!!
28 |
29 | interface EuiccProfilesChangedListener {
30 | fun onEuiccProfilesChanged()
31 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/TerminalType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class TerminalType extends BerInteger {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public TerminalType() {
28 | }
29 |
30 | public TerminalType(byte[] code) {
31 | super(code);
32 | }
33 |
34 | public TerminalType(BigInteger value) {
35 | super(value);
36 | }
37 |
38 | public TerminalType(long value) {
39 | super(value);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/openeuicc/libs/hidden-apis-shim/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.android.library'
3 | id 'org.jetbrains.kotlin.android'
4 | }
5 |
6 | android {
7 | compileSdk 32
8 |
9 | defaultConfig {
10 | minSdk 30
11 | targetSdk 32
12 |
13 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
14 | consumerProguardFiles "consumer-rules.pro"
15 | }
16 |
17 | buildTypes {
18 | release {
19 | minifyEnabled false
20 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
21 | }
22 | }
23 | compileOptions {
24 | sourceCompatibility JavaVersion.VERSION_11
25 | targetCompatibility JavaVersion.VERSION_11
26 | }
27 | kotlinOptions {
28 | jvmTarget = '1.8'
29 | }
30 | }
31 |
32 | dependencies {
33 |
34 | implementation 'androidx.core:core-ktx:1.7.0'
35 | implementation 'androidx.appcompat:appcompat:1.4.2'
36 | implementation 'com.google.android.material:material:1.6.1'
37 | testImplementation 'junit:junit:4.13.2'
38 | androidTestImplementation 'androidx.test.ext:junit:1.1.3'
39 | androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
40 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/UniqueIdentifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class UniqueIdentifier extends BerBitString {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public UniqueIdentifier() {
28 | }
29 |
30 | public UniqueIdentifier(byte[] code) {
31 | super(code);
32 | }
33 |
34 | public UniqueIdentifier(byte[] value, int numBits) {
35 | super(value, numBits);
36 | }
37 |
38 | public UniqueIdentifier(boolean[] value) {
39 | super(value);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/build.gradle:
--------------------------------------------------------------------------------
1 | apply plugin: 'java'
2 | apply plugin: 'kotlin'
3 |
4 | configurations {
5 | tool
6 | }
7 |
8 | dependencies {
9 | tool 'javax.xml.bind:jaxb-api:2.3.0'
10 | tool 'com.beanit:asn1bean-compiler:1.13.0'
11 | implementation 'com.beanit:asn1bean:1.13.0'
12 | implementation 'com.google.code.gson:gson:2.8.4'
13 | testImplementation 'junit:junit:4.12'
14 | testImplementation 'org.mockito:mockito-all:1.10.19'
15 | testImplementation 'com.github.tomakehurst:wiremock:2.17.0'
16 | }
17 |
18 | sourceSets.main.java.srcDirs = ['src/generated/asn1','src/main/java']
19 |
20 | task genAsn1(type: JavaExec) {
21 | mainClass = 'com.beanit.asn1bean.compiler.Compiler'
22 | args "-o", "$projectDir/src/generated/asn1", "-p", "com.truphone.rsp.dto.asn1", "-f", "$projectDir/src/main/resources/PKIXExplicit88.asn", "$projectDir/src/main/resources/PKIXImplicit88.asn", "$projectDir/src/main/resources/rsp.asn"
23 | classpath configurations.tool
24 | }
25 |
26 | compileJava.dependsOn genAsn1
27 | compileKotlin.dependsOn genAsn1
28 |
29 | description = 'LPAd SM-DP+ Connector'
30 |
31 | java {
32 | sourceCompatibility = JavaVersion.VERSION_1_8
33 | targetCompatibility = JavaVersion.VERSION_1_8
34 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1explicit88/CertificateSerialNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1explicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 |
23 | public class CertificateSerialNumber extends BerInteger {
24 |
25 | private static final long serialVersionUID = 1L;
26 |
27 | public CertificateSerialNumber() {
28 | }
29 |
30 | public CertificateSerialNumber(byte[] code) {
31 | super(code);
32 | }
33 |
34 | public CertificateSerialNumber(BigInteger value) {
35 | super(value);
36 | }
37 |
38 | public CertificateSerialNumber(long value) {
39 | super(value);
40 | }
41 |
42 | }
43 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/CancelSessionReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es9plus/cancelSession")
8 | public class CancelSessionReq extends RequestMsgBody {
9 | private String transactionId;
10 | private String euiccCancelSessionSigned;
11 | private String euiccCancelSessionSignature;
12 |
13 | public String getTransactionId() {
14 | return transactionId;
15 | }
16 |
17 | public void setTransactionId(String transactionId) {
18 | this.transactionId = transactionId;
19 | }
20 |
21 | public String getEuiccCancelSessionSigned() {
22 | return euiccCancelSessionSigned;
23 | }
24 |
25 | public void setEuiccCancelSessionSigned(String euiccCancelSessionSigned) {
26 | this.euiccCancelSessionSigned = euiccCancelSessionSigned;
27 | }
28 |
29 | public String getEuiccCancelSessionSignature() {
30 | return euiccCancelSessionSignature;
31 | }
32 |
33 | public void setEuiccCancelSessionSignature(String euiccCancelSessionSignature) {
34 | this.euiccCancelSessionSignature = euiccCancelSessionSignature;
35 | }
36 |
37 | }
38 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/layout/activity_main.xml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
17 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Octet1.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Octet1 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public Octet1() {
32 | }
33 |
34 | public Octet1(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Octet2.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Octet2 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public Octet2() {
32 | }
33 |
34 | public Octet2(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Octet8.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Octet8 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public Octet8() {
32 | }
33 |
34 | public Octet8(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Octet16.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Octet16 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public Octet16() {
32 | }
33 |
34 | public Octet16(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Octet32.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Octet32 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public Octet32() {
32 | }
33 |
34 | public Octet32(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/OctetTo16.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class OctetTo16 extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public OctetTo16() {
32 | }
33 |
34 | public OctetTo16(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/ExpirationDate.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class ExpirationDate extends Time {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public ExpirationDate() {
32 | }
33 |
34 | public ExpirationDate(byte[] code) {
35 | super(code);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/VersionType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class VersionType extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public VersionType() {
32 | }
33 |
34 | public VersionType(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/TransactionId.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class TransactionId extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public TransactionId() {
32 | }
33 |
34 | public TransactionId(byte[] value) {
35 | super(value);
36 | }
37 |
38 | }
39 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/LocalProfileAssistant.java:
--------------------------------------------------------------------------------
1 | package com.truphone.lpa;
2 |
3 | import com.truphone.lpa.progress.DownloadProgress;
4 | import com.truphone.lpad.progress.Progress;
5 |
6 | import java.util.List;
7 | import java.util.Map;
8 |
9 | public interface LocalProfileAssistant {
10 |
11 | boolean enableProfile(String iccid, Progress progress);
12 |
13 | boolean disableProfile(String iccid, Progress progress);
14 |
15 | boolean deleteProfile(String iccid, Progress progress);
16 |
17 | String getDefaultSMDP();
18 |
19 | String setDefaultSMDP(String smdpAddress, Progress progress);
20 |
21 |
22 | void downloadProfile(String matchingId, String imei, DownloadProgress progress) throws Exception;
23 |
24 | List getProfiles();
25 |
26 | /**
27 | * Gets the EID from the eUICC
28 | * @return the EID from the eUICC
29 | */
30 | String getEID();
31 |
32 | /**
33 | * Allocates the Protected Profile Packages to specified EIDs based on given MCC
34 | * @param mcc Mobile country code
35 | * @return Activation Code Token
36 | */
37 | String allocateProfile(String mcc);
38 |
39 | void processPendingNotifications();
40 |
41 | boolean setNickname(String iccid, String nickname
42 | );
43 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/CPSuri.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class CPSuri extends BerIA5String {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public CPSuri() {
34 | }
35 |
36 | public CPSuri(byte[] value) {
37 | super(value);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/IconType.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class IconType extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public IconType() {
32 | }
33 |
34 | public IconType(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public IconType(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public IconType(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/gradle.properties:
--------------------------------------------------------------------------------
1 | # Project-wide Gradle settings.
2 | # IDE (e.g. Android Studio) users:
3 | # Gradle settings configured through the IDE *will override*
4 | # any settings specified in this file.
5 | # For more details on how to configure your build environment visit
6 | # http://www.gradle.org/docs/current/userguide/build_environment.html
7 | # Specifies the JVM arguments used for the daemon process.
8 | # The setting is particularly useful for tweaking memory settings.
9 | org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
10 | # When configured, Gradle will run in incubating parallel mode.
11 | # This option should only be used with decoupled projects. More details, visit
12 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
13 | # org.gradle.parallel=true
14 | # AndroidX package structure to make it clearer which packages are bundled with the
15 | # Android operating system, and which are packaged with your app"s APK
16 | # https://developer.android.com/topic/libraries/support-library/androidx-rn
17 | android.useAndroidX=true
18 | # Kotlin code style for this project: "official" or "obsolete":
19 | kotlin.code.style=official
20 | # Enables namespacing of each library's R class so that its R class includes only the
21 | # resources declared in the library itself and none from the library's dependencies,
22 | # thereby reducing the size of the R class for that library
23 | android.nonTransitiveRClass=true
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/beanit/asn1bean/1.13.0/asn1bean-1.13.0.pom:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
6 |
7 |
8 |
9 | 4.0.0
10 | com.beanit
11 | asn1bean
12 | 1.13.0
13 | ASN1bean
14 | ASN1bean is a library used for encoding and decoding ASN.1 BER messages.
15 | http://www.beanit.com/
16 |
17 |
18 | The Apache License, Version 2.0
19 | http://www.apache.org/licenses/LICENSE-2.0.txt
20 |
21 |
22 |
23 |
24 | beanit
25 | Beanit GmbH
26 |
27 |
28 |
29 | none
30 | none
31 |
32 |
33 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/PprIds.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class PprIds extends BerBitString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public PprIds() {
32 | }
33 |
34 | public PprIds(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public PprIds(byte[] value, int numBits) {
39 | super(value, numBits);
40 | }
41 |
42 | public PprIds(boolean[] value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/ErrorReason.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class ErrorReason extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public ErrorReason() {
32 | }
33 |
34 | public ErrorReason(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public ErrorReason(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public ErrorReason(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/FreshestCRL.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class FreshestCRL extends CRLDistributionPoints {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public FreshestCRL() {
34 | }
35 |
36 | public FreshestCRL(byte[] code) {
37 | super(code);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/IssuerAltName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class IssuerAltName extends GeneralNames {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public IssuerAltName() {
34 | }
35 |
36 | public IssuerAltName(byte[] code) {
37 | super(code);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/KeyIdentifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class KeyIdentifier extends BerOctetString {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public KeyIdentifier() {
34 | }
35 |
36 | public KeyIdentifier(byte[] value) {
37 | super(value);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/SubjectAltName.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class SubjectAltName extends GeneralNames {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public SubjectAltName() {
34 | }
35 |
36 | public SubjectAltName(byte[] code) {
37 | super(code);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/BppCommandId.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class BppCommandId extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public BppCommandId() {
32 | }
33 |
34 | public BppCommandId(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public BppCommandId(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public BppCommandId(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/ProfileClass.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class ProfileClass extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public ProfileClass() {
32 | }
33 |
34 | public ProfileClass(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public ProfileClass(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public ProfileClass(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/ProfileState.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class ProfileState extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public ProfileState() {
32 | }
33 |
34 | public ProfileState(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public ProfileState(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public ProfileState(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/InvalidityDate.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class InvalidityDate extends BerGeneralizedTime {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public InvalidityDate() {
34 | }
35 |
36 | public InvalidityDate(byte[] value) {
37 | super(value);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/CertificateIssuer.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class CertificateIssuer extends GeneralNames {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public CertificateIssuer() {
34 | }
35 |
36 | public CertificateIssuer(byte[] code) {
37 | super(code);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/PartialCrlNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class PartialCrlNumber extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public PartialCrlNumber() {
32 | }
33 |
34 | public PartialCrlNumber(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public PartialCrlNumber(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public PartialCrlNumber(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/SubjectKeyIdentifier.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class SubjectKeyIdentifier extends KeyIdentifier {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public SubjectKeyIdentifier() {
34 | }
35 |
36 | public SubjectKeyIdentifier(byte[] value) {
37 | super(value);
38 | }
39 |
40 | }
41 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/DownloadErrorCode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class DownloadErrorCode extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public DownloadErrorCode() {
32 | }
33 |
34 | public DownloadErrorCode(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public DownloadErrorCode(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public DownloadErrorCode(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/RspCapability.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class RspCapability extends BerBitString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public RspCapability() {
32 | }
33 |
34 | public RspCapability(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public RspCapability(byte[] value, int numBits) {
39 | super(value, numBits);
40 | }
41 |
42 | public RspCapability(boolean[] value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/UICCCapability.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class UICCCapability extends BerBitString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public UICCCapability() {
32 | }
33 |
34 | public UICCCapability(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public UICCCapability(byte[] value, int numBits) {
39 | super(value, numBits);
40 | }
41 |
42 | public UICCCapability(boolean[] value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/CancelSessionReason.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class CancelSessionReason extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public CancelSessionReason() {
32 | }
33 |
34 | public CancelSessionReason(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public CancelSessionReason(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public CancelSessionReason(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/CertificateInfo.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class CertificateInfo extends BerBitString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public CertificateInfo() {
32 | }
33 |
34 | public CertificateInfo(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public CertificateInfo(byte[] value, int numBits) {
39 | super(value, numBits);
40 | }
41 |
42 | public CertificateInfo(boolean[] value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/LoadCRLResponseError.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class LoadCRLResponseError extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public LoadCRLResponseError() {
32 | }
33 |
34 | public LoadCRLResponseError(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public LoadCRLResponseError(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public LoadCRLResponseError(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/ProfileInfoListError.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class ProfileInfoListError extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public ProfileInfoListError() {
32 | }
33 |
34 | public ProfileInfoListError(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public ProfileInfoListError(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public ProfileInfoListError(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/ToTLV.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 |
4 | public class ToTLV {
5 | public static String toTLV(String tag,String input){
6 | if("".equals(tag))return toTLV(input);
7 | return tag+toTLV(input);
8 | }
9 |
10 | public static String integerToTLV(String tag,int input){
11 | if("".equals(tag))return integerToTLV(input);
12 | return tag+integerToTLV(input);
13 | }
14 |
15 | public static String integerToTLV(int input) {
16 | String tlv;
17 | if(input<=127){
18 | tlv=String.format("01%02X", input);
19 | }else{
20 | tlv=String.format("02%04X", input);
21 | }
22 |
23 | return tlv;
24 | }
25 |
26 |
27 | public static String toTLV(String input) {
28 | int inputLen = input.length()/2;
29 | String strInputLenString = toHex(String.valueOf(inputLen));
30 | if (inputLen > 65535) {
31 | input = "83" + strInputLenString + input;
32 | } else if (inputLen > 255) {
33 | input = "82" + strInputLenString + input;
34 | } else if(inputLen > 127) {
35 | input = "81" + strInputLenString + input;
36 | } else {
37 | input = strInputLenString + input;
38 | }
39 |
40 | return input;
41 | }
42 |
43 | private static String toHex(String num) {
44 | String hex = Integer.toHexString(Integer.valueOf(num));
45 | if (hex.length() % 2 != 0) {
46 | hex = "0" + hex;
47 | }
48 | return hex.toUpperCase();
49 | }
50 | }
51 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/AuthenticateErrorCode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class AuthenticateErrorCode extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public AuthenticateErrorCode() {
32 | }
33 |
34 | public AuthenticateErrorCode(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public AuthenticateErrorCode(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public AuthenticateErrorCode(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/NotificationEvent.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class NotificationEvent extends BerBitString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public NotificationEvent() {
32 | }
33 |
34 | public NotificationEvent(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public NotificationEvent(byte[] value, int numBits) {
39 | super(value, numBits);
40 | }
41 |
42 | public NotificationEvent(boolean[] value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/TotalPartialCrlNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class TotalPartialCrlNumber extends BerInteger {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public TotalPartialCrlNumber() {
32 | }
33 |
34 | public TotalPartialCrlNumber(byte[] code) {
35 | super(code);
36 | }
37 |
38 | public TotalPartialCrlNumber(BigInteger value) {
39 | super(value);
40 | }
41 |
42 | public TotalPartialCrlNumber(long value) {
43 | super(value);
44 | }
45 |
46 | }
47 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/util/UiUtils.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.util
2 |
3 | import android.app.Activity
4 | import android.content.res.Resources
5 | import android.graphics.Rect
6 | import android.view.ViewGroup
7 | import androidx.fragment.app.DialogFragment
8 | import androidx.fragment.app.Fragment
9 | import im.angry.openeuicc.OpenEuiccApplication
10 |
11 | val Activity.openEuiccApplication: OpenEuiccApplication
12 | get() = application as OpenEuiccApplication
13 |
14 | val Fragment.openEuiccApplication: OpenEuiccApplication
15 | get() = requireActivity().openEuiccApplication
16 |
17 | // Source:
18 | /**
19 | * Call this method (in onActivityCreated or later) to set
20 | * the width of the dialog to a percentage of the current
21 | * screen width.
22 | */
23 | fun DialogFragment.setWidthPercent(percentage: Int) {
24 | val percent = percentage.toFloat() / 100
25 | val dm = Resources.getSystem().displayMetrics
26 | val rect = dm.run { Rect(0, 0, widthPixels, heightPixels) }
27 | val percentWidth = rect.width() * percent
28 | dialog?.window?.setLayout(percentWidth.toInt(), ViewGroup.LayoutParams.WRAP_CONTENT)
29 | }
30 |
31 | /**
32 | * Call this method (in onActivityCreated or later)
33 | * to make the dialog near-full screen.
34 | */
35 | fun DialogFragment.setFullScreen() {
36 | dialog?.window?.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT)
37 | }
38 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/CertPolicyId.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class CertPolicyId extends BerObjectIdentifier {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public CertPolicyId() {
34 | }
35 |
36 | public CertPolicyId(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public CertPolicyId(int[] value) {
41 | super(value);
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/KeyPurposeId.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class KeyPurposeId extends BerObjectIdentifier {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public KeyPurposeId() {
34 | }
35 |
36 | public KeyPurposeId(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public KeyPurposeId(int[] value) {
41 | super(value);
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/AllocateProfileResponse.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus;
2 |
3 | public class AllocateProfileResponse {
4 | private String acFormat;
5 | private String smDpPlusAddress;
6 | private String acToken;
7 | private String smDpPlusOid;
8 | private String confirmationCodeRequiredFlag;
9 |
10 | public String getAcFormat() {
11 |
12 | return acFormat;
13 | }
14 |
15 | public void setAcFormat(String acFormat) {
16 |
17 | this.acFormat = acFormat;
18 | }
19 |
20 | public String getSmDpPlusAddress() {
21 |
22 | return smDpPlusAddress;
23 | }
24 |
25 | public void setSmDpPlusAddress(String smDpPlusAddress) {
26 |
27 | this.smDpPlusAddress = smDpPlusAddress;
28 | }
29 |
30 | public String getAcToken() {
31 |
32 | return acToken;
33 | }
34 |
35 | public void setAcToken(String acToken) {
36 |
37 | this.acToken = acToken;
38 | }
39 |
40 | public String getSmDpPlusOid() {
41 |
42 | return smDpPlusOid;
43 | }
44 |
45 | public void setSmDpPlusOid(String smDpPlusOid) {
46 |
47 | this.smDpPlusOid = smDpPlusOid;
48 | }
49 |
50 | public String getConfirmationCodeRequiredFlag() {
51 |
52 | return confirmationCodeRequiredFlag;
53 | }
54 |
55 | public void setConfirmationCodeRequiredFlag(String confirmationCodeRequiredFlag) {
56 |
57 | this.confirmationCodeRequiredFlag = confirmationCodeRequiredFlag;
58 | }
59 | }
60 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/PolicyQualifierId.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class PolicyQualifierId extends BerObjectIdentifier {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public PolicyQualifierId() {
34 | }
35 |
36 | public PolicyQualifierId(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public PolicyQualifierId(int[] value) {
41 | super(value);
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/HoldInstructionCode.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class HoldInstructionCode extends BerObjectIdentifier {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public HoldInstructionCode() {
34 | }
35 |
36 | public HoldInstructionCode(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public HoldInstructionCode(int[] value) {
41 | super(value);
42 | }
43 |
44 | }
45 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/core/TelephonyManagerApduChannel.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.core
2 |
3 | import android.telephony.TelephonyManager
4 | import com.truphone.lpa.ApduChannel
5 | import com.truphone.lpa.ApduTransmittedListener
6 | import im.angry.openeuicc.util.*
7 |
8 | class TelephonyManagerApduChannel(
9 | private val tm: TelephonyManager,
10 | private val slotId: Int,
11 | private val channelId: Int) : ApduChannel {
12 |
13 | override fun transmitAPDU(apdu: String): String? {
14 | val cla = Integer.parseInt(apdu.substring(0, 2), 16)
15 | val instruction = Integer.parseInt(apdu.substring(2, 4), 16)
16 | val p1 = Integer.parseInt(apdu.substring(4, 6), 16)
17 | val p2 = Integer.parseInt(apdu.substring(6, 8), 16)
18 | val p3 = Integer.parseInt(apdu.substring(8, 10), 16)
19 | val p4 = apdu.substring(10)
20 |
21 | return tm.iccTransmitApduLogicalChannelBySlot(
22 | slotId, channelId,
23 | cla, instruction, p1, p2, p3, p4)
24 | }
25 |
26 | override fun transmitAPDUS(apdus: MutableList): String? {
27 | var res: String? = ""
28 | for (pdu in apdus) {
29 | res = transmitAPDU(pdu)
30 | }
31 | return res
32 | }
33 |
34 | override fun sendStatus() {
35 | }
36 |
37 | override fun setApduTransmittedListener(apduTransmittedListener: ApduTransmittedListener?) {
38 | }
39 |
40 | override fun removeApduTransmittedListener(apduTransmittedListener: ApduTransmittedListener?) {
41 | }
42 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/CRLReason.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class CRLReason extends BerEnum {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public CRLReason() {
34 | }
35 |
36 | public CRLReason(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public CRLReason(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public CRLReason(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/CRLNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class CRLNumber extends BerInteger {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public CRLNumber() {
34 | }
35 |
36 | public CRLNumber(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public CRLNumber(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public CRLNumber(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/SkipCerts.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class SkipCerts extends BerInteger {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public SkipCerts() {
34 | }
35 |
36 | public SkipCerts(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public SkipCerts(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public SkipCerts(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/Android.bp:
--------------------------------------------------------------------------------
1 | android_app {
2 | name: "OpenEUICC",
3 | static_libs: [
4 | // Dependencies that must be pulled from maven
5 | "asn1bean-prebuilt-jar",
6 | "zxing-core-prebuilt-jar",
7 | "zxing-android-embedded-prebuilt-aar",
8 |
9 | // Dependencies included with AOSP
10 | "androidx.appcompat_appcompat",
11 | "androidx.cardview_cardview",
12 | "androidx-constraintlayout_constraintlayout",
13 | "androidx.core_core-ktx",
14 | "androidx.lifecycle_lifecycle-runtime-ktx",
15 | "androidx.swiperefreshlayout_swiperefreshlayout",
16 | "com.google.android.material_material",
17 | "gson-prebuilt-jar",
18 | "kotlinx_coroutines",
19 | ],
20 | srcs: [
21 | // Main app
22 | "app/src/main/**/*.kt",
23 |
24 | // TruPhone LPAd library
25 | "libs/lpad-sm-dp-plus-connector/src/generated/**/*.java",
26 | "libs/lpad-sm-dp-plus-connector/src/main/**/*.java",
27 | "libs/lpad-sm-dp-plus-connector/src/main/**/*.kt",
28 | ],
29 | resource_dirs: [
30 | "app/src/main/res",
31 | ],
32 | required: ["privapp_whitelist_im.angry.openeuicc.xml"],
33 | manifest: "app/src/main/AndroidManifest.xml",
34 | privileged: true,
35 | platform_apis: true,
36 | system_ext_specific: true,
37 | certificate: "platform",
38 | }
39 |
40 | prebuilt_etc {
41 | name: "privapp_whitelist_im.angry.openeuicc.xml",
42 | system_ext_specific: true,
43 | src: "privapp_whitelist_im.angry.openeuicc.xml",
44 | sub_dir: "permissions",
45 | }
46 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/BaseDistance.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class BaseDistance extends BerInteger {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public BaseDistance() {
34 | }
35 |
36 | public BaseDistance(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public BaseDistance(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public BaseDistance(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/KeyUsage.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class KeyUsage extends BerBitString {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public KeyUsage() {
34 | }
35 |
36 | public KeyUsage(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public KeyUsage(byte[] value, int numBits) {
41 | super(value, numBits);
42 | }
43 |
44 | public KeyUsage(boolean[] value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/BaseCRLNumber.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class BaseCRLNumber extends CRLNumber {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public BaseCRLNumber() {
34 | }
35 |
36 | public BaseCRLNumber(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public BaseCRLNumber(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public BaseCRLNumber(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/ReasonFlags.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class ReasonFlags extends BerBitString {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public ReasonFlags() {
34 | }
35 |
36 | public ReasonFlags(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public ReasonFlags(byte[] value, int numBits) {
41 | super(value, numBits);
42 | }
43 |
44 | public ReasonFlags(boolean[] value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/request/ConfirmOrderReq.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.request;
2 |
3 |
4 | import com.truphone.es9plus.message.MsgType;
5 | import com.truphone.es9plus.message.request.base.RequestMsgBody;
6 |
7 | @MsgType("/gsma/rsp2/es2plus/confirmOrder")
8 | public class ConfirmOrderReq extends RequestMsgBody {
9 | private String iccid;
10 | private String eid;
11 | private String matchingId;
12 | private String comfirmationCode;
13 | private String smdsAddress;
14 | private boolean releaseFlag;
15 | public String getIccid() {
16 | return iccid;
17 | }
18 | public void setIccid(String iccid) {
19 | this.iccid = iccid;
20 | }
21 | public String getEid() {
22 | return eid;
23 | }
24 | public void setEid(String eid) {
25 | this.eid = eid;
26 | }
27 | public String getMatchingId() {
28 | return matchingId;
29 | }
30 | public void setMatchingId(String matchingId) {
31 | this.matchingId = matchingId;
32 | }
33 | public String getComfirmationCode() {
34 | return comfirmationCode;
35 | }
36 | public void setComfirmationCode(String comfirmationCode) {
37 | this.comfirmationCode = comfirmationCode;
38 | }
39 | public String getSmdsAddress() {
40 | return smdsAddress;
41 | }
42 | public void setSmdsAddress(String smdsAddress) {
43 | this.smdsAddress = smdsAddress;
44 | }
45 | public boolean getReleaseFlag() {
46 | return releaseFlag;
47 | }
48 | public void setReleaseFlag(boolean releaseFlag) {
49 | this.releaseFlag = releaseFlag;
50 | }
51 |
52 |
53 | }
54 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/pkix1implicit88/InhibitAnyPolicy.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.pkix1implicit88;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Attribute;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateSerialNumber;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.DirectoryString;
25 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Name;
26 | import com.truphone.rsp.dto.asn1.pkix1explicit88.ORAddress;
27 | import com.truphone.rsp.dto.asn1.pkix1explicit88.RelativeDistinguishedName;
28 |
29 | public class InhibitAnyPolicy extends SkipCerts {
30 |
31 | private static final long serialVersionUID = 1L;
32 |
33 | public InhibitAnyPolicy() {
34 | }
35 |
36 | public InhibitAnyPolicy(byte[] code) {
37 | super(code);
38 | }
39 |
40 | public InhibitAnyPolicy(BigInteger value) {
41 | super(value);
42 | }
43 |
44 | public InhibitAnyPolicy(long value) {
45 | super(value);
46 | }
47 |
48 | }
49 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/layout/fragment_euicc.xml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
15 |
16 |
21 |
22 |
23 |
24 |
33 |
34 |
--------------------------------------------------------------------------------
/openeuicc/app/src/main/java/im/angry/openeuicc/core/OmapiChannel.kt:
--------------------------------------------------------------------------------
1 | package im.angry.openeuicc.core
2 |
3 | import android.se.omapi.Channel
4 | import android.se.omapi.SEService
5 | import android.util.Log
6 | import com.truphone.lpa.LocalProfileAssistant
7 | import com.truphone.lpa.impl.LocalProfileAssistantImpl
8 | import java.lang.Exception
9 |
10 | class OmapiChannel private constructor(
11 | info: EuiccChannelInfo,
12 | private val channel: Channel
13 | ) : EuiccChannel(info) {
14 | companion object {
15 | private const val TAG = "OmapiChannel"
16 | private val APPLET_ID = byteArrayOf(-96, 0, 0, 5, 89, 16, 16, -1, -1, -1, -1, -119, 0, 0, 1, 0)
17 |
18 | fun tryConnect(service: SEService, info: EuiccChannelInfo): OmapiChannel? {
19 | try {
20 | val reader = service.getUiccReader(info.slotId + 1) // slotId from telephony starts from 0
21 | val session = reader.openSession()
22 | val channel = session.openLogicalChannel(APPLET_ID) ?: return null
23 | return OmapiChannel(info, channel)
24 | } catch (e: Exception) {
25 | Log.e(TAG, "Unable to open eUICC channel for slot ${info.slotId}, skipping")
26 | Log.e(TAG, Log.getStackTraceString(e))
27 | return null
28 | }
29 | }
30 | }
31 |
32 | override val lpa: LocalProfileAssistant by lazy {
33 | LocalProfileAssistantImpl(OmapiApduChannel(channel))
34 | }
35 | override val valid: Boolean
36 | get() = channel.isOpen // TODO: This has to be implemented properly
37 |
38 | override fun close() = channel.close()
39 | }
40 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/es9plus/message/response/base/StatusCodeData.java:
--------------------------------------------------------------------------------
1 | package com.truphone.es9plus.message.response.base;
2 |
3 | public class StatusCodeData {
4 |
5 | private String subjectCode;
6 |
7 | private String reasonCode;
8 |
9 | private String message;
10 |
11 | private String subjectIdentifier;
12 |
13 | public StatusCodeData() {
14 | super();
15 | }
16 |
17 | public StatusCodeData(String subjectCode, String reasonCode, String message) {
18 | super();
19 | this.subjectCode = subjectCode;
20 | this.reasonCode = reasonCode;
21 | this.message = message;
22 | }
23 |
24 | public StatusCodeData(String subjectCode, String reasonCode, String message, String subjectIdentifier) {
25 | super();
26 | this.subjectCode = subjectCode;
27 | this.reasonCode = reasonCode;
28 | this.message = message;
29 | this.subjectIdentifier = subjectIdentifier;
30 | }
31 |
32 | public String getSubjectCode() {
33 | return subjectCode;
34 | }
35 |
36 | public void setSubjectCode(String subjectCode) {
37 | this.subjectCode = subjectCode;
38 | }
39 |
40 | public String getReasonCode() {
41 | return reasonCode;
42 | }
43 |
44 | public void setReasonCode(String reasonCode) {
45 | this.reasonCode = reasonCode;
46 | }
47 |
48 | public String getMessage() {
49 | return message;
50 | }
51 |
52 | public void setMessage(String message) {
53 | this.message = message;
54 | }
55 |
56 | public String getSubjectIdentifier() {
57 | return subjectIdentifier;
58 | }
59 |
60 | public void setSubjectIdentifier(String subjectIdentifier) {
61 | this.subjectIdentifier = subjectIdentifier;
62 | }
63 |
64 | }
65 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/Util.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 | public class Util {
4 | public static String byteToHexString(byte b) {
5 | StringBuffer s = new StringBuffer();
6 |
7 | if ((b & 0xFF) < 16)
8 | s.append("0");
9 | s.append(Integer.toHexString(b & 0xFF).toUpperCase());
10 | return s.toString();
11 | }
12 |
13 | public static String byteArrayToHexString(byte[] buffer, String separator) {
14 | StringBuffer s = new StringBuffer();
15 | int i = 0;
16 |
17 | for (i = 0; i < buffer.length; i++) {
18 | s.append(byteToHexString(buffer[i]) + separator);
19 | }
20 |
21 | if (s.length() > 0) {
22 | s.delete(s.length() - separator.length(), s.length());
23 | }
24 |
25 | return s.toString();
26 | }
27 |
28 | public static byte[] hexStringToByteArray(String s) {
29 | if (s == null)
30 | return null;
31 | s = s.replaceAll(" ", "").replaceAll(":", "").replaceAll("0x", "").replaceAll("0X", "");
32 | if (s.length() % 2 != 0)
33 | throw new IllegalArgumentException("The length cannot be odd.");
34 | byte[] output = new byte[s.length() / 2];
35 | for (int i = 0; i < s.length(); i += 2)
36 | output[(i / 2)] = ((byte) Integer.parseInt(s.substring(i, i + 2), 16));
37 | return output;
38 | }
39 |
40 |
41 | public static String ASCIIToHex(String s) {
42 | String ret = "";
43 |
44 | if (s != null) {
45 | byte[] buffer = s.getBytes();
46 |
47 | ret = byteArrayToHexString(buffer, "");
48 | }
49 |
50 | return ret;
51 | }
52 | }
53 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/util/LogStub.java:
--------------------------------------------------------------------------------
1 | package com.truphone.util;
2 |
3 | import java.util.logging.Level;
4 | import java.util.logging.Logger;
5 |
6 | public class LogStub {
7 | private static LogStub instance;
8 |
9 | private Level logLevel;
10 | private String tag;
11 | private boolean androidLog;
12 |
13 | private LogStub() {
14 |
15 | logLevel = Level.ALL;
16 | tag = "";
17 | androidLog = false;
18 | }
19 |
20 | public static LogStub getInstance() {
21 |
22 | if (instance == null) {
23 | instance = new LogStub();
24 | }
25 |
26 | return instance;
27 | }
28 |
29 | public void setLogLevel(Level logLevel) {
30 |
31 | this.logLevel = logLevel;
32 | }
33 |
34 | public boolean isDebugEnabled() {
35 |
36 | return logLevel.intValue() <= Level.FINE.intValue();
37 | }
38 |
39 | private boolean isTraceEnabled() {
40 |
41 | return logLevel.intValue() <= Level.FINEST.intValue();
42 | }
43 |
44 | public String getTag() {
45 |
46 | return tag;
47 | }
48 |
49 | public void setTag(String tag) {
50 |
51 | this.tag = tag;
52 | }
53 |
54 | public void setAndroidLog(boolean androidLog) {
55 |
56 | this.androidLog = androidLog;
57 | }
58 |
59 | private boolean isAndroidLog() {
60 |
61 | return androidLog;
62 | }
63 |
64 | public void logDebug(Logger logger, String message) {
65 | logger.info(message);
66 | // if (isAndroidLog()) {
67 | // logger.info(message);
68 | // } else {
69 | // //logger.fine(message);
70 | // System.out.println(message);
71 | // }
72 | }
73 | }
74 |
--------------------------------------------------------------------------------
/openeuicc/app/build.gradle:
--------------------------------------------------------------------------------
1 | plugins {
2 | id 'com.android.application'
3 | id 'org.jetbrains.kotlin.android'
4 | }
5 |
6 | android {
7 | compileSdk 31
8 |
9 | defaultConfig {
10 | applicationId "im.angry.openeuicc"
11 | minSdk 30
12 | targetSdk 31
13 | versionCode 1
14 | versionName "1.0"
15 |
16 | testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
17 | }
18 |
19 | buildTypes {
20 | release {
21 | minifyEnabled false
22 | proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
23 | }
24 | }
25 | compileOptions {
26 | sourceCompatibility JavaVersion.VERSION_11
27 | targetCompatibility JavaVersion.VERSION_11
28 | }
29 | kotlinOptions {
30 | jvmTarget = '1.8'
31 | }
32 | }
33 |
34 | dependencies {
35 | compileOnly project(':libs:hidden-apis-stub')
36 | implementation project(':libs:hidden-apis-shim')
37 | implementation project(":libs:lpad-sm-dp-plus-connector")
38 | implementation 'androidx.core:core-ktx:1.7.0'
39 | implementation 'androidx.appcompat:appcompat:1.4.1'
40 | implementation 'com.google.android.material:material:1.6.0'
41 | implementation 'androidx.constraintlayout:constraintlayout:2.1.3'
42 | implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.4.1'
43 | implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
44 | implementation "androidx.cardview:cardview:1.0.0"
45 | implementation 'com.journeyapps:zxing-android-embedded:4.3.0'
46 | testImplementation 'junit:junit:4.13.2'
47 | androidTestImplementation 'androidx.test.ext:junit:1.1.3'
48 | androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
49 | }
--------------------------------------------------------------------------------
/openeuicc/app/src/main/res/values/strings.xml:
--------------------------------------------------------------------------------
1 |
2 | OpenEUICC
3 |
4 | No eUICC found on this device.\nOn some devices, you may need to enable dual SIM first in the menu of this app.
5 |
6 | Dual SIM
7 |
8 | Enabled
9 | Disabled
10 | Provider:
11 | ICCID:
12 |
13 | Enable
14 | Disable
15 | Delete
16 | Rename
17 |
18 | eSIM profile switched. Please wait for a while when the card is restarting.
19 | Cannot switch to new eSIM profile.
20 | Nickname cannot be longer than 64 characters
21 | DSDS state switched. Please wait until the modem restarts.
22 |
23 | New eSIM
24 | Server (RSP / SM-DP+)
25 | Activation Code
26 | Scan QR Code
27 | Download
28 | Failed to download eSIM. Check your activation / QR code.
29 |
30 | New nickname
31 |
32 | Are you sure you want to delete the profile %s? This operation is irreversible.
33 |
--------------------------------------------------------------------------------
/openeuicc-deps/repository/com/journeyapps/zxing-android-embedded/4.3.0/zxing-android-embedded-4.3.0.pom:
--------------------------------------------------------------------------------
1 |
2 |
3 | 4.0.0
4 | com.journeyapps
5 | zxing-android-embedded
6 | 4.3.0
7 | aar
8 | zxing-android-embedded
9 | Barcode scanner library for Android, based on the ZXing decoder
10 | https://github.com/journeyapps/zxing-android-embedded
11 |
12 |
13 | The Apache License, Version 2.0
14 | https://github.com/journeyapps/zxing-android-embedded/blob/master/COPYING
15 |
16 |
17 |
18 |
19 |
20 | Ralf Kistner
21 | ralf@journeyapps.com
22 | Journey Mobile, Inc
23 | https://journeyapps.com
24 |
25 |
26 |
27 | scm:git:github.com/journeyapps/zxing-android-embedded.git
28 | scm:git:ssh://github.com/journeyapps/zxing-android-embedded.git
29 | https://github.com/journeyapps/zxing-android-embedded
30 |
31 |
32 |
33 | com.google.zxing
34 | core
35 | 3.4.1
36 | api
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/LocalProfileInfo.kt:
--------------------------------------------------------------------------------
1 | /*
2 | * Copyright 2022 Peter Cai & Pierre-Hugues Husson
3 | *
4 | * This program is free software: you can redistribute it and/or modify it under the terms of the
5 | * GNU General Public License as published by the Free Software Foundation, version 2.
6 | *
7 | * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
8 | * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
9 | * See the GNU General Public License for more details.
10 | *
11 | * You should have received a copy of the GNU General Public License along with this program.
12 | * If not, see .
13 | */
14 |
15 | package com.truphone.lpa
16 |
17 | import java.lang.IllegalArgumentException
18 |
19 | data class LocalProfileInfo(
20 | val iccid: String,
21 | val state: State,
22 | val name: String,
23 | val nickName: String,
24 | val providerName: String,
25 | val isdpAID: String,
26 | val profileClass: Clazz
27 | ) {
28 | enum class State {
29 | Enabled,
30 | Disabled
31 | }
32 |
33 | enum class Clazz {
34 | Testing,
35 | Provisioning,
36 | Operational
37 | }
38 |
39 | companion object {
40 | fun stateFromString(state: String?): State =
41 | if (state == "0") {
42 | State.Disabled
43 | } else {
44 | State.Enabled
45 | }
46 |
47 | fun classFromString(clazz: String?): Clazz =
48 | when (clazz) {
49 | "0" -> Clazz.Testing
50 | "1" -> Clazz.Provisioning
51 | "2" -> Clazz.Operational
52 | else -> throw IllegalArgumentException("Unknown profile class $clazz")
53 | }
54 | }
55 | }
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/main/java/com/truphone/lpa/impl/SetSMDPAddressWorker.java:
--------------------------------------------------------------------------------
1 | /*
2 | * To change this license header, choose License Headers in Project Properties.
3 | * To change this template file, choose Tools | Templates
4 | * and open the template in the editor.
5 | */
6 | package com.truphone.lpa.impl;
7 |
8 | import com.truphone.lpa.ApduChannel;
9 | import com.truphone.lpa.apdu.ApduUtils;
10 | import com.truphone.lpad.progress.Progress;
11 | import com.truphone.util.LogStub;
12 | import com.truphone.util.TextUtil;
13 | import java.util.logging.Logger;
14 |
15 | /**
16 | *
17 | * @author amilcar.pereira
18 | */
19 | public class SetSMDPAddressWorker {
20 |
21 | private static final Logger LOG = Logger.getLogger(EnableProfileWorker.class.getName());
22 | private final ApduChannel apduChannel;
23 | private final Progress progress;
24 | private String dpAddrNew;
25 |
26 | public SetSMDPAddressWorker(ApduChannel apduChannel, Progress progress, String dpAddrNew) {
27 | this.apduChannel = apduChannel;
28 | this.progress = progress;
29 | this.dpAddrNew=dpAddrNew;
30 | }
31 |
32 | public String run() {
33 | String hexDPAddress = TextUtil.toHexString(dpAddrNew.getBytes());
34 | String apdu = ApduUtils.setDefaultDpAddressApdu(hexDPAddress);
35 |
36 | if (LogStub.getInstance().isDebugEnabled()) {
37 | LogStub.getInstance().logDebug(LOG, LogStub.getInstance().getTag() + " - setEuiccConfiguredAddressesApdu APDU: " + apdu);
38 | }
39 |
40 | String eResponse = apduChannel.transmitAPDU(apdu);
41 |
42 | if (LogStub.getInstance().isDebugEnabled()) {
43 | LogStub.getInstance().logDebug(LOG, LogStub.getInstance().getTag() + " - setEuiccConfiguredAddressesApdu response: " + eResponse);
44 | }
45 |
46 | return eResponse;
47 | }
48 |
49 |
50 | }
51 |
--------------------------------------------------------------------------------
/openeuicc/libs/lpad-sm-dp-plus-connector/src/generated/asn1/com/truphone/rsp/dto/asn1/rspdefinitions/Iccid.java:
--------------------------------------------------------------------------------
1 | /*
2 | * This class file was automatically generated by ASN1bean v1.13.0 (http://www.beanit.com)
3 | */
4 |
5 | package com.truphone.rsp.dto.asn1.rspdefinitions;
6 |
7 | import java.io.IOException;
8 | import java.io.EOFException;
9 | import java.io.InputStream;
10 | import java.io.OutputStream;
11 | import java.io.ByteArrayOutputStream;
12 | import java.util.List;
13 | import java.util.ArrayList;
14 | import java.util.Iterator;
15 | import java.io.UnsupportedEncodingException;
16 | import java.math.BigInteger;
17 | import java.io.Serializable;
18 | import com.beanit.asn1bean.ber.*;
19 | import com.beanit.asn1bean.ber.types.*;
20 | import com.beanit.asn1bean.ber.types.string.*;
21 |
22 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Certificate;
23 | import com.truphone.rsp.dto.asn1.pkix1explicit88.CertificateList;
24 | import com.truphone.rsp.dto.asn1.pkix1explicit88.Time;
25 | import com.truphone.rsp.dto.asn1.pkix1implicit88.SubjectKeyIdentifier;
26 |
27 | public class Iccid extends BerOctetString {
28 |
29 | private static final long serialVersionUID = 1L;
30 |
31 | public static final BerTag tag = new BerTag(BerTag.APPLICATION_CLASS, BerTag.PRIMITIVE, 26);
32 |
33 | public Iccid() {
34 | }
35 |
36 | public Iccid(byte[] value) {
37 | super(value);
38 | }
39 |
40 | @Override public int encode(OutputStream reverseOS, boolean withTag) throws IOException {
41 |
42 | int codeLength;
43 |
44 | codeLength = super.encode(reverseOS, false);
45 | if (withTag) {
46 | codeLength += tag.encode(reverseOS);
47 | }
48 |
49 | return codeLength;
50 | }
51 |
52 | @Override public int decode(InputStream is, boolean withTag) throws IOException {
53 |
54 | int codeLength = 0;
55 |
56 | if (withTag) {
57 | codeLength += tag.decodeAndCheck(is);
58 | }
59 |
60 | codeLength += super.decode(is, false);
61 |
62 | return codeLength;
63 | }
64 |
65 | }
66 |
--------------------------------------------------------------------------------