tls_api_security_framework_2/
lib.rs1#![deny(rustdoc::broken_intra_doc_links)]
8#![cfg_attr(not(any(target_os = "macos", target_os = "ios")), allow(dead_code))]
9
10mod stream;
11
12mod acceptor;
13mod connector;
14mod error;
15mod handshake;
16
17use tls_api::ImplInfo;
18
19pub use acceptor::SecureTransportTlsAcceptorBuilder;
20pub use acceptor::TlsAcceptor;
21pub use acceptor::TlsAcceptorBuilder;
22pub use connector::TlsConnector;
23pub use connector::TlsConnectorBuilder;
24
25pub(crate) use error::Error;
26
27#[cfg(any(target_os = "macos", target_os = "ios"))]
28pub(crate) use stream::TlsStream;
29#[cfg(not(any(target_os = "macos", target_os = "ios")))]
30pub(crate) use tls_api_stub::TlsStream;
31
32#[allow(dead_code)]
33pub(crate) fn not_ios_or_macos<T>() -> anyhow::Result<T> {
34 Err(Error::NotIosOrMacos.into())
35}
36
37pub(crate) fn info() -> ImplInfo {
38 ImplInfo {
39 name: "security-framework",
40 version: {
41 #[cfg(any(target_os = "macos", target_os = "ios"))]
42 {
43 "unknown"
44 }
45 #[cfg(not(any(target_os = "macos", target_os = "ios")))]
46 {
47 "not iOS or macOS"
48 }
49 },
50 }
51}
52
53#[cfg(any(target_os = "macos", target_os = "ios"))]
54pub(crate) const IMPLEMENTED: bool = true;
55#[cfg(not(any(target_os = "macos", target_os = "ios")))]
56pub(crate) const IMPLEMENTED: bool = false;