Skip to content

Commit 98e2219

Browse files
Merge pull request #1065 from marcprux/master
Add Android support
2 parents 3023636 + 1e30a61 commit 98e2219

File tree

10 files changed

+43
-0
lines changed

10 files changed

+43
-0
lines changed

.github/workflows/android.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Android
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
9+
jobs:
10+
build:
11+
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- name: Checkout
16+
uses: actions/checkout@v4
17+
with:
18+
fetch-depth: 0
19+
20+
- name: Run tests
21+
uses: skiptools/swift-android-action@v2

Sources/CryptoSwift/BlockMode/CCM.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919

2020
#if canImport(Darwin)
2121
import Darwin
22+
#elseif canImport(Android)
23+
import Android
2224
#elseif canImport(Glibc)
2325
import Glibc
2426
#elseif canImport(Musl)

Sources/CryptoSwift/Cryptors.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515

1616
#if canImport(Darwin)
1717
import Darwin
18+
#elseif canImport(Android)
19+
import Android
1820
#elseif canImport(Glibc)
1921
import Glibc
2022
#elseif canImport(Musl)

Sources/CryptoSwift/HKDF.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818

1919
#if canImport(Darwin)
2020
import Darwin
21+
#elseif canImport(Android)
22+
import Android
2123
#elseif canImport(Glibc)
2224
import Glibc
2325
#elseif canImport(Musl)

Sources/CryptoSwift/Int+Extension.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@
1616

1717
#if canImport(Darwin)
1818
import Darwin
19+
#elseif canImport(Android)
20+
import Android
1921
#elseif canImport(Glibc)
2022
import Glibc
2123
#elseif canImport(Musl)

Sources/CryptoSwift/PKCS/PBKDF2.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818

1919
#if canImport(Darwin)
2020
import Darwin
21+
#elseif canImport(Android)
22+
import Android
2123
#elseif canImport(Glibc)
2224
import Glibc
2325
#elseif canImport(Musl)

Sources/CryptoSwift/SHA3.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919

2020
#if canImport(Darwin)
2121
import Darwin
22+
#elseif canImport(Android)
23+
import Android
2224
#elseif canImport(Glibc)
2325
import Glibc
2426
#elseif canImport(Musl)

Sources/CryptoSwift/SecureBytes.swift

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515

1616
#if canImport(Darwin)
1717
import Darwin
18+
#elseif canImport(Android)
19+
import Android
1820
#elseif canImport(Glibc)
1921
import Glibc
2022
#elseif canImport(Musl)
@@ -39,6 +41,8 @@ final class SecureBytes {
3941
VirtualLock(UnsafeMutableRawPointer(mutating: pointer.baseAddress), SIZE_T(pointer.count))
4042
#elseif os(WASI)
4143
// not supported on WASI
44+
#elseif os(Android)
45+
mlock(pointer.baseAddress!, pointer.count)
4246
#else
4347
mlock(pointer.baseAddress, pointer.count)
4448
#endif
@@ -51,6 +55,8 @@ final class SecureBytes {
5155
VirtualUnlock(UnsafeMutableRawPointer(mutating: pointer.baseAddress), SIZE_T(pointer.count))
5256
#elseif os(WASI)
5357
// not supported on WASI
58+
#elseif os(Android)
59+
munlock(pointer.baseAddress!, pointer.count)
5460
#else
5561
munlock(pointer.baseAddress, pointer.count)
5662
#endif

Sources/CryptoSwift/UInt32+Extension.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515

1616
#if canImport(Darwin)
1717
import Darwin
18+
#elseif canImport(Android)
19+
import Android
1820
#elseif canImport(Glibc)
1921
import Glibc
2022
#elseif canImport(Musl)

Sources/CryptoSwift/UInt8+Extension.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515

1616
#if canImport(Darwin)
1717
import Darwin
18+
#elseif canImport(Android)
19+
import Android
1820
#elseif canImport(Glibc)
1921
import Glibc
2022
#elseif canImport(Musl)

0 commit comments

Comments
 (0)