mirror of
https://github.com/syncthing/syncthing-macos.git
synced 2026-06-16 12:04:33 +00:00
33 lines
1.3 KiB
Objective-C
33 lines
1.3 KiB
Objective-C
//
|
|
// LocalhostTLSDelegate.m
|
|
// syncthing
|
|
//
|
|
// Created by Jakob Borg on 2018-07-28.
|
|
// Copyright © 2018 Jerry Jacobs. All rights reserved.
|
|
//
|
|
|
|
#import "LocalhostTLSDelegate.h"
|
|
|
|
@implementation LocalhostTLSDelegate
|
|
|
|
- (void) URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler {
|
|
if (challenge.protectionSpace.authenticationMethod != NSURLAuthenticationMethodServerTrust) {
|
|
// We're doing something other than checking a server certificate.
|
|
completionHandler(NSURLSessionAuthChallengePerformDefaultHandling, nil);
|
|
return;
|
|
}
|
|
|
|
if ([challenge.protectionSpace.host isEqualToString:@"localhost"] ||
|
|
[challenge.protectionSpace.host isEqualToString:@"127.0.0.1"] ||
|
|
[challenge.protectionSpace.host isEqualToString:@"::1"]) {
|
|
// We're looking at localhost. Accept any certificate.
|
|
completionHandler(NSURLSessionAuthChallengeUseCredential, [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]);
|
|
return;
|
|
}
|
|
|
|
// Perform the default processing.
|
|
completionHandler(NSURLSessionAuthChallengePerformDefaultHandling, nil);
|
|
}
|
|
|
|
@end
|