[CDRIVER-3461] Deprecated SSL functions when compiling on macOS Catalina Created: 11/Dec/19  Updated: 15/Nov/23

Status: Backlog
Project: C Driver
Component/s: None
Affects Version/s: 1.15.2
Fix Version/s: None

Type: Task Priority: Major - P3
Reporter: Andreas Braun Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Gantt End to End
has to be finished together with CDRIVER-2722 Reimplement macOS TLS layer in terms ... Backlog
Related
related to CDRIVER-2722 Reimplement macOS TLS layer in terms ... Backlog
Epic Link: CDRIVER-4575

 Description   

When compiling libmongoc on macOS Catalina (10.15), the following deprecation warnings appear:

src/libmongoc/src/mongoc/mongoc-secure-transport.c:393:15: warning: 'SSLSetCertificate' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   success = !SSLSetCertificate (secure_transport->ssl_ctx_ref,
              ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:637:1: note: 'SSLSetCertificate' has been explicitly marked deprecated here
SSLSetCertificate                       (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-secure-transport.c:445:15: warning: 'SSLSetTrustedRoots' is deprecated: first deprecated in macOS 10.9 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   success = !SSLSetTrustedRoots (
              ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1180:1: note: 'SSLSetTrustedRoots' has been explicitly marked deprecated here
SSLSetTrustedRoots                      (SSLContextRef          context,
^
2 warnings generated.
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:52:4: warning: 'SSLClose' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   SSLClose (secure_transport->ssl_ctx_ref);
   ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1731:1: note: 'SSLClose' has been explicitly marked deprecated here
SSLClose                                        (SSLContextRef          context)
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:128:13: warning: 'SSLWrite' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   status = SSLWrite (
            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1670:1: note: 'SSLWrite' has been explicitly marked deprecated here
SSLWrite                                        (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:334:28: warning: 'SSLRead' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
         OSStatus status = SSLRead (secure_transport->ssl_ctx_ref,
                           ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1689:1: note: 'SSLRead' has been explicitly marked deprecated here
SSLRead                                         (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:436:10: warning: 'SSLHandshake' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   ret = SSLHandshake (secure_transport->ssl_ctx_ref);
         ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1641:1: note: 'SSLHandshake' has been explicitly marked deprecated here
SSLHandshake                            (SSLContextRef          context)
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:535:7: warning: 'SSLCreateContext' is deprecated: first deprecated in macOS 10.15 -
      No longer supported. Use Network.framework. [-Wdeprecated-declarations]
      SSLCreateContext (kCFAllocatorDefault,
      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:316:1: note: 'SSLCreateContext' has been explicitly marked deprecated here
SSLCreateContext(CFAllocatorRef __nullable alloc, SSLProtocolSide protocolSide, SSLConnectionType connectionType)
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:536:34: warning: 'kSSLClientSide' is deprecated: first deprecated in macOS 10.15
      [-Wdeprecated-declarations]
                        client ? kSSLClientSide : kSSLServerSide,
                                 ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:218:5: note: 'kSSLClientSide' has been explicitly marked deprecated here
    kSSLClientSide CF_ENUM_DEPRECATED(10_2, 10_15, 2_0, 13_0)
    ^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:536:51: warning: 'kSSLServerSide' is deprecated: first deprecated in macOS 10.15
      [-Wdeprecated-declarations]
                        client ? kSSLClientSide : kSSLServerSide,
                                                  ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:217:5: note: 'kSSLServerSide' has been explicitly marked deprecated here
    kSSLServerSide CF_ENUM_DEPRECATED(10_2, 10_15, 2_0, 13_0),
    ^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:537:25: warning: 'kSSLStreamType' is deprecated: first deprecated in macOS 10.15
      [-Wdeprecated-declarations]
                        kSSLStreamType);
                        ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:223:5: note: 'kSSLStreamType' has been explicitly marked deprecated here
    kSSLStreamType CF_ENUM_DEPRECATED(10_2, 10_15, 2_0, 13_0),
    ^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:539:4: warning: 'SSLSetIOFuncs' is deprecated: first deprecated in macOS 10.15 - No
      longer supported. Use Network.framework. [-Wdeprecated-declarations]
   SSLSetIOFuncs (secure_transport->ssl_ctx_ref,
   ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:418:1: note: 'SSLSetIOFuncs' has been explicitly marked deprecated here
SSLSetIOFuncs                           (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:542:4: warning: 'SSLSetProtocolVersionMin' is deprecated: first deprecated in macOS
      10.15 - No longer supported. Use Network.framework. [-Wdeprecated-declarations]
   SSLSetProtocolVersionMin (secure_transport->ssl_ctx_ref, kTLSProtocol1);
   ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:458:1: note: 'SSLSetProtocolVersionMin' has been explicitly marked deprecated
      here
SSLSetProtocolVersionMin  (SSLContextRef      context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:542:61: warning: 'kTLSProtocol1' is deprecated: first deprecated in macOS 10.15
      [-Wdeprecated-declarations]
   SSLSetProtocolVersionMin (secure_transport->ssl_ctx_ref, kTLSProtocol1);
                                                            ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecProtocolTypes.h:156:5: note: 'kTLSProtocol1' has been explicitly marked deprecated here
    kTLSProtocol1 CF_ENUM_DEPRECATED(10_2, 10_15, 5_0, 13_0) = 4,
    ^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:560:7: warning: 'SSLSetSessionOption' is deprecated: first deprecated in macOS
      10.15 - No longer supported. Use Network.framework. [-Wdeprecated-declarations]
      SSLSetSessionOption (secure_transport->ssl_ctx_ref,
      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:384:1: note: 'SSLSetSessionOption' has been explicitly marked deprecated here
SSLSetSessionOption                     (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:561:28: warning: 'kSSLSessionOptionBreakOnServerAuth' is deprecated: first
      deprecated in macOS 10.15 [-Wdeprecated-declarations]
                           kSSLSessionOptionBreakOnServerAuth,
                           ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:99:2: note: 'kSSLSessionOptionBreakOnServerAuth' has been explicitly marked
      deprecated here
        kSSLSessionOptionBreakOnServerAuth CF_ENUM_DEPRECATED(10_2, 10_15, 2_0, 13_0) = 0,
        ^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:565:7: warning: 'SSLSetClientSideAuthenticate' is deprecated: first deprecated in
      macOS 10.15 - No longer supported. Use Network.framework. [-Wdeprecated-declarations]
      SSLSetClientSideAuthenticate (secure_transport->ssl_ctx_ref,
      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:1410:1: note: 'SSLSetClientSideAuthenticate' has been explicitly marked
      deprecated here
SSLSetClientSideAuthenticate    (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:570:7: warning: 'SSLSetPeerDomainName' is deprecated: first deprecated in macOS
      10.15 - No longer supported. Use Network.framework. [-Wdeprecated-declarations]
      SSLSetPeerDomainName (secure_transport->ssl_ctx_ref, host, strlen (host));
      ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:686:1: note: 'SSLSetPeerDomainName' has been explicitly marked deprecated here
SSLSetPeerDomainName            (SSLContextRef          context,
^
src/libmongoc/src/mongoc/mongoc-stream-tls-secure-transport.c:572:4: warning: 'SSLSetConnection' is deprecated: first deprecated in macOS 10.15 -
      No longer supported. Use Network.framework. [-Wdeprecated-declarations]
   SSLSetConnection (secure_transport->ssl_ctx_ref, tls);
   ^
/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Security.framework/Headers/SecureTransport.h:657:1: note: 'SSLSetConnection' has been explicitly marked deprecated here
SSLSetConnection                        (SSLContextRef                  context,
^
16 warnings generated.


Generated at Wed Feb 07 21:18:06 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.