Chromium Code Reviews| Index: webrtc/sdk/objc/Framework/Classes/RTCIceServer.mm |
| diff --git a/webrtc/sdk/objc/Framework/Classes/RTCIceServer.mm b/webrtc/sdk/objc/Framework/Classes/RTCIceServer.mm |
| index 41084b9357129f126f6683047f4ea748124b8216..bfab6f59922db936a7760fd3762c18d499ec965f 100644 |
| --- a/webrtc/sdk/objc/Framework/Classes/RTCIceServer.mm |
| +++ b/webrtc/sdk/objc/Framework/Classes/RTCIceServer.mm |
| @@ -17,9 +17,9 @@ |
| @synthesize urlStrings = _urlStrings; |
| @synthesize username = _username; |
| @synthesize credential = _credential; |
| +@synthesize tlsCertPolicy = _tlsCertPolicy; |
| - (instancetype)initWithURLStrings:(NSArray<NSString *> *)urlStrings { |
| - NSParameterAssert(urlStrings.count); |
| return [self initWithURLStrings:urlStrings |
| username:nil |
| credential:nil]; |
| @@ -28,24 +28,46 @@ |
| - (instancetype)initWithURLStrings:(NSArray<NSString *> *)urlStrings |
| username:(NSString *)username |
| credential:(NSString *)credential { |
| + return [self initWithURLStrings:urlStrings |
| + username:username |
| + credential:credential |
| + tlsCertPolicy:RTCTlsCertPolicySecure]; |
| +} |
| + |
| +- (instancetype)initWithURLStrings:(NSArray<NSString *> *)urlStrings |
| + username:(NSString *)username |
| + credential:(NSString *)credential |
| + tlsCertPolicy:(RTCTlsCertPolicy)tlsCertPolicy { |
| NSParameterAssert(urlStrings.count); |
| if (self = [super init]) { |
| _urlStrings = [[NSArray alloc] initWithArray:urlStrings copyItems:YES]; |
| _username = [username copy]; |
| _credential = [credential copy]; |
| + _tlsCertPolicy = tlsCertPolicy; |
| } |
| return self; |
| } |
| - (NSString *)description { |
| - return [NSString stringWithFormat:@"RTCIceServer:\n%@\n%@\n%@", |
| - _urlStrings, |
| - _username, |
| - _credential]; |
| + return |
| + [NSString stringWithFormat:@"RTCIceServer:\n%@\n%@\n%@\n%@", _urlStrings, |
| + _username, _credential, |
| + [self stringForTlsCertPolicy:_tlsCertPolicy]]; |
| } |
| #pragma mark - Private |
| +- (NSString *)stringForTlsCertPolicy:(RTCTlsCertPolicy)tlsCertPolicy { |
| + switch (tlsCertPolicy) { |
| + case RTCTlsCertPolicySecure: |
| + return @"RTCTlsCertPolicySecure"; |
| + case RTCTlsCertPolicyInsecureNoCheck: |
| + return @"RTCTlsCertPolicyInsecureNoCheck"; |
| + default: |
|
tkchin_webrtc
2017/02/02 19:51:12
remove default
hnsl1
2017/02/02 19:53:35
Done.
|
| + return @"RTCTlsCertPolicyUnknown"; |
| + } |
| +} |
| + |
| - (webrtc::PeerConnectionInterface::IceServer)nativeServer { |
| __block webrtc::PeerConnectionInterface::IceServer iceServer; |
| @@ -57,6 +79,17 @@ |
| BOOL *stop) { |
| iceServer.urls.push_back(url.stdString); |
| }]; |
| + |
| + switch (_tlsCertPolicy) { |
| + case RTCTlsCertPolicySecure: |
| + iceServer.tls_cert_policy = |
| + webrtc::PeerConnectionInterface::kTlsCertPolicySecure; |
| + break; |
| + case RTCTlsCertPolicyInsecureNoCheck: |
| + iceServer.tls_cert_policy = |
| + webrtc::PeerConnectionInterface::kTlsCertPolicyInsecureNoCheck; |
| + break; |
| + } |
| return iceServer; |
| } |
| @@ -69,9 +102,21 @@ |
| } |
| NSString *username = [NSString stringForStdString:nativeServer.username]; |
| NSString *credential = [NSString stringForStdString:nativeServer.password]; |
| + RTCTlsCertPolicy tlsCertPolicy; |
| + |
| + switch (nativeServer.tls_cert_policy) { |
| + case webrtc::PeerConnectionInterface::kTlsCertPolicySecure: |
| + tlsCertPolicy = RTCTlsCertPolicySecure; |
| + break; |
| + case webrtc::PeerConnectionInterface::kTlsCertPolicyInsecureNoCheck: |
| + tlsCertPolicy = RTCTlsCertPolicyInsecureNoCheck; |
| + break; |
| + } |
| + |
| self = [self initWithURLStrings:urls |
| username:username |
| - credential:credential]; |
| + credential:credential |
| + tlsCertPolicy:tlsCertPolicy]; |
| return self; |
| } |