From 3c296d6e2144f9cb507d86ecf0787c258b77580a Mon Sep 17 00:00:00 2001 From: Divy Srivastava Date: Sun, 5 Nov 2023 13:04:15 +0530 Subject: [PATCH] Use dlopen2 --- Cargo.toml | 4 ++-- src/macos.rs | 13 ++++++------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index e3392c7..df25f5c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,8 +15,8 @@ rustls-native-certs = "0.6.2" [target.'cfg(target_os = "macos")'.dependencies] once_cell = "1.17.1" -dlopen = "0.1.8" -dlopen_derive = "0.1.4" +dlopen2 = "0.6.1" +dlopen2_derive = "0.4.0" rustls-pemfile = "1.0.2" [target.'cfg(target_os = "macos")'.dev-dependencies] diff --git a/src/macos.rs b/src/macos.rs index a0810c4..38dde53 100644 --- a/src/macos.rs +++ b/src/macos.rs @@ -1,9 +1,10 @@ +#![allow(non_upper_case_globals)] + use crate::Certificate; -use dlopen::symbor::{Container, Ref, SymBorApi, Symbol}; -use dlopen::Error as DlopenError; +use dlopen2::symbor::{Container, Ref, SymBorApi, Symbol}; +use dlopen2::Error as DlopenError; use once_cell::unsync::OnceCell; use std::collections::HashMap; -use std::ffi::c_char; use std::ffi::c_void; use std::io::{Error, ErrorKind}; use std::ptr; @@ -126,11 +127,9 @@ const kSecTrustSettingsDomainSystem: SecTrustSettingsDomain = 2; type SecTrustSettingsResult = u32; -const kSecTrustSettingsResultInvalid: SecTrustSettingsResult = 0; const kSecTrustSettingsResultTrustRoot: SecTrustSettingsResult = 1; const kSecTrustSettingsResultTrustAsRoot: SecTrustSettingsResult = 2; const kSecTrustSettingsResultDeny: SecTrustSettingsResult = 3; -const kSecTrustSettingsResultUnspecified: SecTrustSettingsResult = 4; const errSecNoTrustSettings: OSStatus = -25263; const errSecSuccess: OSStatus = 0; @@ -139,7 +138,7 @@ enum OpaqueSecCertificateRef {} type SecCertificateRef = *mut OpaqueSecCertificateRef; #[allow(non_snake_case)] -#[derive(dlopen_derive::SymBorApi)] +#[derive(dlopen2_derive::SymBorApi)] struct TrustSettings<'a> { // TrustSettings SecTrustSettingsCopyCertificates: Symbol< @@ -163,7 +162,7 @@ type CFStringEncoding = u32; static kCFStringEncodingUTF8: CFStringEncoding = 0x08000100; #[allow(non_snake_case)] -#[derive(dlopen_derive::SymBorApi)] +#[derive(dlopen2_derive::SymBorApi)] struct CoreFoundation<'a> { // CFArray CFArrayGetValueAtIndex: