mirror of
https://github.com/mollyim/webrtc.git
synced 2025-05-16 23:30:48 +01:00

This is being added to allow greater configurability to TLS connections. tlsAlpnProtocols, tlsEllipticCurves and tlsCertPolicy will be removed from IceServer in a follow-up CL. Bug: webrtc:9662 Change-Id: I33cb804b02c26c662ed2a28c76f9a9dc2df40f36 Reviewed-on: https://webrtc-review.googlesource.com/96020 Commit-Queue: Diogo Real <diogor@google.com> Reviewed-by: Qingsi Wang <qingsi@webrtc.org> Reviewed-by: Benjamin Wright <benwright@webrtc.org> Reviewed-by: Steve Anton <steveanton@webrtc.org> Reviewed-by: Sami Kalliomäki <sakal@webrtc.org> Reviewed-by: Kári Helgason <kthelgason@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24559}
56 lines
1.8 KiB
Objective-C
56 lines
1.8 KiB
Objective-C
/*
|
|
* Copyright 2018 The WebRTC project authors. All Rights Reserved.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license
|
|
* that can be found in the LICENSE file in the root of the source
|
|
* tree. An additional intellectual property rights grant can be found
|
|
* in the file PATENTS. All contributing project authors may
|
|
* be found in the AUTHORS file in the root of the source tree.
|
|
*/
|
|
|
|
#import <Foundation/Foundation.h>
|
|
|
|
#import <WebRTC/RTCMacros.h>
|
|
|
|
typedef NS_ENUM(NSUInteger, RTCTlsCertPolicy) {
|
|
RTCTlsCertPolicySecure,
|
|
RTCTlsCertPolicyInsecureNoCheck
|
|
};
|
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
RTC_EXPORT
|
|
@interface RTCSSLConfig : NSObject
|
|
|
|
/** Indicates whether to enable OCSP stapling in TLS. */
|
|
@property(nonatomic) BOOL enableOCSPStapling;
|
|
|
|
/** Indicates whether to enable the signed certificate timestamp extension in TLS. */
|
|
@property(nonatomic) BOOL enableSignedCertTimestamp;
|
|
|
|
/** Indicates whether to enable the TLS Channel ID extension. */
|
|
@property(nonatomic) BOOL enableTlsChannelId;
|
|
|
|
/** Indicates whether to enable the TLS GREASE extension. */
|
|
@property(nonatomic) BOOL enableGrease;
|
|
|
|
/** Indicates how to process TURN server certificates */
|
|
@property(nonatomic) RTCTlsCertPolicy tlsCertPolicy;
|
|
|
|
/** Highest supported SSL version, as defined in the supported_versions TLS extension. */
|
|
@property(nonatomic, nullable) NSNumber *maxSSLVersion;
|
|
|
|
/** List of protocols to be used in the TLS ALPN extension. */
|
|
@property(nonatomic, copy, nullable) NSArray<NSString *> *tlsALPNProtocols;
|
|
|
|
/**
|
|
List of elliptic curves to be used in the TLS elliptic curves extension.
|
|
Only curve names supported by OpenSSL should be used (eg. "P-256","X25519").
|
|
*/
|
|
@property(nonatomic, copy, nullable) NSArray<NSString *> *tlsEllipticCurves;
|
|
|
|
- (instancetype)init;
|
|
|
|
@end
|
|
|
|
NS_ASSUME_NONNULL_END
|