Skip to content

Commit

Permalink
Bump iOS/tvOS minimum version to 11.0, cleanup some code (#81965)
Browse files Browse the repository at this point in the history
In .NET 8 the minimum Apple OS versions we're supporting are iOS/tvOS 11.0 and macOS 10.15.

This bumps the version settings in various files and cleans up code that can now assume it's running on a later OS version. For example, it allows us to get rid of a couple `dlsym()` calls in System.Security.Cryptography.Native.Apple.

We can also stop building the iOS arm and iOSSimulator x86 runtime packs since 32bit platforms aren't supported by iOS 11
  • Loading branch information
akoeplinger committed Feb 13, 2023
1 parent 79941e4 commit 8cb3cfc
Show file tree
Hide file tree
Showing 24 changed files with 69 additions and 218 deletions.
15 changes: 14 additions & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,20 @@
<TargetArchitecture Condition="'$(TargetArchitecture)' == ''">x64</TargetArchitecture>
<Platform Condition="'$(Platform)' == '' and '$(InferPlatformFromTargetArchitecture)' == 'true'">$(TargetArchitecture)</Platform>
</PropertyGroup>


<PropertyGroup Label="SetOSTargetMinVersions">
<!-- Minimum Apple target OS versions, keep in sync with src/native/libs/build-native.sh -->
<iOSVersionMin>11.0</iOSVersionMin>
<tvOSVersionMin>11.0</tvOSVersionMin>
<watchOSVersionMin>2.0</watchOSVersionMin>
<watchOS64_32VersionMin>5.1</watchOS64_32VersionMin>
<macOSVersionMin>10.15</macOSVersionMin>
<macOSVersionMin Condition="('$(TargetOS)' == 'osx' or '$(TargetOS)' == 'maccatalyst') and '$(TargetArchitecture)' == 'arm64'">11.0</macOSVersionMin>

<!-- Minimum version of the Android API level we target, keep in sync with eng/native/build-commons.sh -->
<AndroidApiLevelMin>21</AndroidApiLevelMin>
</PropertyGroup>

<PropertyGroup>
<!-- Set OutDirName (Arcade specific property that must be set before the Arcade SDK is imported) to change the BaseOutputPath and
BaseIntermediateOutputPath properties to include the ref subfolder. -->
Expand Down
2 changes: 1 addition & 1 deletion eng/native/build-commons.sh
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ build_native()
exit 1
fi

# keep ANDROID_PLATFORM in sync with src/mono/Directory.Build.props
# keep ANDROID_PLATFORM in sync with SetOSTargetMinVersions in the root Directory.Build.props
cmakeArgs="-DCMAKE_TOOLCHAIN_FILE=$ANDROID_NDK_ROOT/build/cmake/android.toolchain.cmake -DANDROID_PLATFORM=android-21 $cmakeArgs"

# Don't try to set CC/CXX in init-compiler.sh - it's handled in android.toolchain.cmake already
Expand Down
38 changes: 0 additions & 38 deletions eng/pipelines/common/platform-matrix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -653,25 +653,6 @@ jobs:
helixQueueGroup: ${{ parameters.helixQueueGroup }}
${{ insert }}: ${{ parameters.jobParameters }}

# iOS arm

- ${{ if containsValue(parameters.platforms, 'ios_arm') }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
variables: ${{ parameters.variables }}
osGroup: ios
archType: arm
targetRid: ios-arm
platform: ios_arm
shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
jobParameters:
runtimeFlavor: mono
buildConfig: ${{ parameters.buildConfig }}
helixQueueGroup: ${{ parameters.helixQueueGroup }}
${{ insert }}: ${{ parameters.jobParameters }}

# iOS arm64

- ${{ if containsValue(parameters.platforms, 'ios_arm64') }}:
Expand Down Expand Up @@ -710,25 +691,6 @@ jobs:
helixQueueGroup: ${{ parameters.helixQueueGroup }}
${{ insert }}: ${{ parameters.jobParameters }}

# iOS Simulator x86

- ${{ if containsValue(parameters.platforms, 'iossimulator_x86') }}:
- template: xplat-setup.yml
parameters:
jobTemplate: ${{ parameters.jobTemplate }}
helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
variables: ${{ parameters.variables }}
osGroup: iossimulator
archType: x86
targetRid: iossimulator-x86
platform: iossimulator_x86
shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
jobParameters:
runtimeFlavor: mono
buildConfig: ${{ parameters.buildConfig }}
helixQueueGroup: ${{ parameters.helixQueueGroup }}
${{ insert }}: ${{ parameters.jobParameters }}

# iOS Simulator arm64

- ${{ if containsValue(parameters.platforms, 'iossimulator_arm64') }}:
Expand Down
2 changes: 0 additions & 2 deletions eng/pipelines/coreclr/perf-non-wasm-jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -360,7 +360,6 @@ jobs:
# - maccatalyst_x64
# - iossimulator_x64
# - ios_arm64
# - ios_arm
# jobParameters:
# buildArgs: -s mono+libs+host+packs -c $(_BuildConfig)
# nameSuffix: Maui_Packs_Mono
Expand All @@ -386,7 +385,6 @@ jobs:
# - Build_android_x64_release_Maui_Packs_Mono
# - Build_maccatalyst_x64_release_Maui_Packs_Mono
# - Build_iossimulator_x64_release_Maui_Packs_Mono
# - Build_ios_arm_release_Maui_Packs_Mono
# - Build_ios_arm64_release_Maui_Packs_Mono
buildArgs: -s mono -c $(_BuildConfig)
nameSuffix: MACiOSAndroidMauiNet7
Expand Down
7 changes: 0 additions & 7 deletions eng/pipelines/coreclr/templates/build-perf-maui-apps-net7.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,13 +82,6 @@ steps:
# overwriteExistingFiles: true
# cleanDestinationFolder: false
#- task: ExtractFiles@1
# displayName: Extract ios-arm runtime
# inputs:
# archiveFilePatterns: $(Build.SourcesDirectory)/MauiTesting/ArtifactPacks/Microsoft.NETCore.App.Runtime.Mono.ios-arm.*.zip
# destinationFolder: $(Build.SourcesDirectory)/MauiTesting/ArtifactPacks/Microsoft.NETCore.App.Runtime.Mono.ios-arm
# overwriteExistingFiles: true
# cleanDestinationFolder: false
#- task: ExtractFiles@1
# displayName: Extract ios-arm64 runtime
# inputs:
# archiveFilePatterns: $(Build.SourcesDirectory)/MauiTesting/ArtifactPacks/Microsoft.NETCore.App.Runtime.Mono.ios-arm64.*.zip
Expand Down
4 changes: 0 additions & 4 deletions eng/pipelines/runtime-official.yml
Original file line number Diff line number Diff line change
Expand Up @@ -117,9 +117,7 @@ extends:
- tvossimulator_arm64
- tvos_arm64
- iossimulator_x64
- iossimulator_x86
- iossimulator_arm64
- ios_arm
- ios_arm64
- osx_x64
- osx_arm64
Expand Down Expand Up @@ -496,10 +494,8 @@ extends:
- Build_android_x86_release_AllSubsets_Mono
- Build_android_x64_release_AllSubsets_Mono
- Build_browser_wasm_Linux_release_AllSubsets_Mono
- Build_ios_arm_release_AllSubsets_Mono
- Build_ios_arm64_release_AllSubsets_Mono
- Build_iossimulator_x64_release_AllSubsets_Mono
- Build_iossimulator_x86_release_AllSubsets_Mono
- Build_iossimulator_arm64_release_AllSubsets_Mono
- Build_maccatalyst_arm64_release_AllSubsets_Mono
- Build_maccatalyst_x64_release_AllSubsets_Mono
Expand Down
2 changes: 0 additions & 2 deletions eng/pipelines/runtime.yml
Original file line number Diff line number Diff line change
Expand Up @@ -364,7 +364,6 @@ extends:
runtimeFlavor: mono
platforms:
- tvossimulator_x64
- iossimulator_x86
- linux_arm
jobParameters:
testGroup: innerloop
Expand All @@ -383,7 +382,6 @@ extends:
buildConfig: Release
runtimeFlavor: mono
platforms:
- ios_arm
- linux_musl_x64
jobParameters:
testGroup: innerloop
Expand Down
2 changes: 1 addition & 1 deletion eng/targetingpacks.targets
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
RuntimeFrameworkName="$(LocalFrameworkOverrideName)"
LatestRuntimeFrameworkVersion="$(ProductVersion)"
RuntimePackNamePatterns="$(LocalFrameworkOverrideName).Runtime.Mono.**RID**"
RuntimePackRuntimeIdentifiers="linux-arm;linux-arm64;linux-musl-arm64;linux-musl-x64;linux-x64;osx-x64;rhel.6-x64;win-arm;win-arm64;win-x64;win-x86;linux-musl-arm;osx-arm64;maccatalyst-x64;maccatalyst-arm64;linux-s390x;linux-bionic-arm;linux-bionic-arm64;linux-bionic-x64;linux-bionic-x86;browser-wasm;wasi-wasm;ios-arm64;ios-arm;iossimulator-arm64;iossimulator-x64;iossimulator-x86;tvos-arm64;tvossimulator-arm64;tvossimulator-x64;android-arm64;android-arm;android-x64;android-x86"
RuntimePackRuntimeIdentifiers="linux-arm;linux-arm64;linux-musl-arm64;linux-musl-x64;linux-x64;osx-x64;rhel.6-x64;win-arm;win-arm64;win-x64;win-x86;linux-musl-arm;osx-arm64;maccatalyst-x64;maccatalyst-arm64;linux-s390x;linux-bionic-arm;linux-bionic-arm64;linux-bionic-x64;linux-bionic-x86;browser-wasm;wasi-wasm;ios-arm64;iossimulator-arm64;iossimulator-x64;tvos-arm64;tvossimulator-arm64;tvossimulator-x64;android-arm64;android-arm;android-x64;android-x86"
RuntimePackLabels="Mono"
Condition="'@(KnownRuntimePack)' == '' or !@(KnownRuntimePack->AnyHaveMetadataValue('TargetFramework', '$(NetCoreAppCurrent)'))"/>
<KnownCrossgen2Pack Include="$(LocalFrameworkOverrideName).Crossgen2"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+android+'))">$(MonoAotTargets);android-x64;android-arm64;android-x86;android-arm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+browser+'))">$(MonoAotTargets);browser-wasm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+tvos+'))">$(MonoAotTargets);tvossimulator-x64;tvossimulator-arm64;tvos-arm64</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+ios+'))">$(MonoAotTargets);iossimulator-x64;iossimulator-arm64;iossimulator-x86;ios-arm64;ios-arm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+ios+'))">$(MonoAotTargets);iossimulator-x64;iossimulator-arm64;ios-arm64</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+maccatalyst+'))">$(MonoAotTargets);maccatalyst-x64;maccatalyst-arm64</MonoAotTargets>
</PropertyGroup>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<conclusion file="conclusion.html" mime-type="text/html" />
<volume-check>
<allowed-os-versions>
<os-version min="10.13" />
<os-version min="10.15" />
</allowed-os-versions>
</volume-check>
</installer-gui-script>
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ private static partial int AppleCryptoNative_X509GetSubjectSummary(
out SafeCFStringHandle cfSubjectSummaryOut);

[LibraryImport(Libraries.AppleCryptoNative)]
private static partial int AppleCryptoNative_X509GetPublicKey(SafeSecCertificateHandle cert, out SafeSecKeyRefHandle publicKey, out int pOSStatus);
private static partial int AppleCryptoNative_X509GetPublicKey(SafeSecCertificateHandle cert, out SafeSecKeyRefHandle publicKey);

internal static X509ContentType X509GetContentType(ReadOnlySpan<byte> data)
=> X509GetContentType(ref MemoryMarshal.GetReference(data), data.Length);
Expand Down Expand Up @@ -125,8 +125,7 @@ internal static SafeSecKeyRefHandle X509GetPrivateKeyFromIdentity(SafeSecIdentit
internal static SafeSecKeyRefHandle X509GetPublicKey(SafeSecCertificateHandle cert)
{
SafeSecKeyRefHandle publicKey;
int osStatus;
int ret = AppleCryptoNative_X509GetPublicKey(cert, out publicKey, out osStatus);
int ret = AppleCryptoNative_X509GetPublicKey(cert, out publicKey);

if (ret == 1)
{
Expand All @@ -135,11 +134,6 @@ internal static SafeSecKeyRefHandle X509GetPublicKey(SafeSecCertificateHandle ce

publicKey.Dispose();

if (ret == 0)
{
throw CreateExceptionForOSStatus(osStatus);
}

Debug.Fail($"Unexpected return value {ret}");
throw new CryptographicException();
}
Expand Down
14 changes: 1 addition & 13 deletions src/mono/Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,12 @@
</PropertyGroup>

<PropertyGroup>
<!-- Minimum target OS version, keep in sync with src/native/libs/build-native.sh -->
<iOSVersionMin>10.0</iOSVersionMin>
<tvOSVersionMin>10.0</tvOSVersionMin>
<watchOSVersionMin>2.0</watchOSVersionMin>
<watchOS64_32VersionMin>5.1</watchOS64_32VersionMin>
<macOSVersionMin>10.14</macOSVersionMin>
<!-- FIXME: when we're building ios or tvOS cross-compilers hosted on OSX/arm64 targeting ios/arm64 we should set the min macOS version to 11.0, also -->
<macOSVersionMin Condition="('$(TargetOS)' == 'osx' or '$(TargetOS)' == 'maccatalyst') and '$(TargetArchitecture)' == 'arm64'">11.0</macOSVersionMin>

<!-- Version of the OS SDK we target -->
<!-- Version of the Apple OS SDKs we target. Usually empty so the latest version is used but can be overriden externally. -->
<iOSVersion></iOSVersion>
<tvOSVersion></tvOSVersion>
<watchOSVersion></watchOSVersion>
<watchOS64_32Version></watchOS64_32Version>
<macOSVersion></macOSVersion>

<!-- Minimum version of the Android API level we target, keep in sync with eng/native/build-commons.sh -->
<AndroidApiLevelMin>21</AndroidApiLevelMin>
</PropertyGroup>

<!-- Output paths -->
Expand Down
9 changes: 4 additions & 5 deletions src/mono/cmake/configure.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ ac_check_funcs (
sched_getaffinity sched_setaffinity chmod lstat getdtablesize ftruncate msync
getpeername utime utimes openlog closelog atexit popen strerror_r inet_pton inet_aton
poll getfsstat mremap posix_fadvise vsnprintf statfs statvfs setpgid system
fork execv execve waitpid localtime_r mkdtemp getrandom execvp strlcpy stpcpy strtok_r rewinddir
fork execv execve waitpid localtime_r mkdtemp getrandom getentropy execvp strlcpy stpcpy strtok_r rewinddir
vasprintf strndup getprotobyname getprotobyname_r getaddrinfo mach_absolute_time
gethrtime read_real_time gethostbyname gethostbyname2 getnameinfo getifaddrs
access inet_ntop Qp2getifaddrs getpid mktemp)
Expand All @@ -99,9 +99,9 @@ endif()

check_include_files("sys/types.h;sys/user.h" HAVE_SYS_USER_H)

if(NOT HOST_DARWIN)
# getentropy was introduced in macOS 10.12 / iOS 10.0
ac_check_funcs (getentropy)
if(HOST_IOS OR HOST_MACCAT)
# getentropy isn't allowed in the AppStore: https://github.com/rust-lang/rust/issues/102643
set(HAVE_GETENTROPY 0)
endif()

if(NOT DISABLE_THREADS)
Expand Down Expand Up @@ -248,7 +248,6 @@ if(HOST_WIN32)
elseif(HOST_IOS)
set(HAVE_SYSTEM 0)
set(HAVE_SYS_USER_H 0)
set(HAVE_GETENTROPY 0)
if(HOST_TVOS)
set(HAVE_PTHREAD_KILL 0)
set(HAVE_KILL 0)
Expand Down
2 changes: 1 addition & 1 deletion src/mono/monoaotcross.proj
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+android+'))">$(MonoAotTargets);android-x64;android-arm64;android-x86;android-arm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+browser+'))">$(MonoAotTargets);browser-wasm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+tvos+'))">$(MonoAotTargets);tvossimulator-x64;tvossimulator-arm64;tvos-arm64</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+ios+'))">$(MonoAotTargets);iossimulator-x64;iossimulator-arm64;iossimulator-x86;ios-arm64;ios-arm</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+ios+'))">$(MonoAotTargets);iossimulator-x64;iossimulator-arm64;ios-arm64</MonoAotTargets>
<MonoAotTargets Condition="$(_MonoCrossAOTTargetOS.contains('+maccatalyst+'))">$(MonoAotTargets);maccatalyst-x64;maccatalyst-arm64</MonoAotTargets>
</PropertyGroup>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,11 +52,9 @@
"abstract": true,
"description": "iOS Mono Runtime and AOT Workload",
"packs": [
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm",
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-arm64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x64",
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x86"
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x64"
],
"extends": [ "runtimes-ios" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
Expand All @@ -65,11 +63,9 @@
"abstract": true,
"description": "iOS Mono Runtime Packs",
"packs": [
"Microsoft.NETCore.App.Runtime.Mono.ios-arm",
"Microsoft.NETCore.App.Runtime.Mono.ios-arm64",
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-arm64",
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64",
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x86"
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x64"
],
"extends": [ "microsoft-net-runtime-mono-tooling" ],
"platforms": [ "win-x64", "win-arm64", "osx-arm64", "osx-x64" ]
Expand Down Expand Up @@ -247,10 +243,6 @@
"kind": "framework",
"version": "${PackageVersion}",
},
"Microsoft.NETCore.App.Runtime.Mono.ios-arm" : {
"kind": "framework",
"version": "${PackageVersion}"
},
"Microsoft.NETCore.App.Runtime.Mono.ios-arm64" : {
"kind": "framework",
"version": "${PackageVersion}"
Expand All @@ -263,10 +255,6 @@
"kind": "framework",
"version": "${PackageVersion}",
},
"Microsoft.NETCore.App.Runtime.Mono.iossimulator-x86" : {
"kind": "framework",
"version": "${PackageVersion}",
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.tvos-arm64": {
"kind": "Sdk",
"version": "${PackageVersion}",
Expand Down Expand Up @@ -319,14 +307,6 @@
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.tvossimulator-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm": {
"kind": "Sdk",
"version": "${PackageVersion}",
"alias-to": {
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm",
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.ios-arm",
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64": {
"kind": "Sdk",
"version": "${PackageVersion}",
Expand All @@ -351,14 +331,6 @@
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x64"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x86": {
"kind": "Sdk",
"version": "${PackageVersion}",
"alias-to": {
"osx-arm64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x86",
"osx-x64": "Microsoft.NETCore.App.Runtime.AOT.osx-x64.Cross.iossimulator-x86"
}
},
"Microsoft.NETCore.App.Runtime.AOT.Cross.browser-wasm": {
"kind": "Sdk",
"version": "${PackageVersion}",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,9 @@
<Import Project="Sdk.targets" Sdk="Microsoft.NET.Runtime.MonoTargets.Sdk" />
</ImportGroup>
<ImportGroup Condition="'$(TargetsCurrent)' == 'true' and '$(TargetPlatformIdentifier)' == 'ios' and $([MSBuild]::IsOSPlatform('osx'))">
<Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm" />
<Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.ios-arm64" />
<Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-arm64" />
<Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x64" />
<Import Project="Sdk.props" Sdk="Microsoft.NETCore.App.Runtime.AOT.Cross.iossimulator-x86" />
</ImportGroup>

<ImportGroup Condition="'$(TargetsCurrent)' == 'true' and '$(TargetPlatformIdentifier)' == 'maccatalyst'">
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -126,9 +126,8 @@ int32_t AppleCryptoNative_X509StoreRemoveCertificate(CFTypeRef certOrIdentity, u
SecCertificateRef cert = (SecCertificateRef)CONST_CAST(void*, certOrIdentity);
SecKeyRef publicKey = NULL;
CFTypeRef publicKeyLabel = NULL;
int32_t dummyStatus;

if (AppleCryptoNative_X509GetPublicKey(cert, &publicKey, &dummyStatus))
if (AppleCryptoNative_X509GetPublicKey(cert, &publicKey))
{
CFDictionaryRef attrs = SecKeyCopyAttributes(publicKey);
publicKeyLabel = CFRetain(CFDictionaryGetValue(attrs, kSecAttrApplicationLabel));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -123,8 +123,7 @@ static CFStringRef GetSignatureAlgorithmIdentifier(PAL_HashAlgorithm hashAlgorit
}
}

// Requires macOS 10.13+ or iOS 11+
/*if (signatureAlgorithm == PAL_SignatureAlgorithm_RSA_Pss)
if (signatureAlgorithm == PAL_SignatureAlgorithm_RSA_Pss)
{
switch (hashAlgorithm)
{
Expand All @@ -133,7 +132,7 @@ static CFStringRef GetSignatureAlgorithmIdentifier(PAL_HashAlgorithm hashAlgorit
case PAL_SHA384: return kSecKeyAlgorithmRSASignatureDigestPSSSHA384;
case PAL_SHA512: return kSecKeyAlgorithmRSASignatureDigestPSSSHA512;
}
}*/
}

if (signatureAlgorithm == PAL_SignatureAlgorithm_RSA_Raw)
{
Expand Down
Loading

0 comments on commit 8cb3cfc

Please sign in to comment.