Adds exception rules config for Global Mode
This commit is contained in:
@ -25,7 +25,7 @@ int main(int argc, const char * argv[])
|
||||
NSString* privoxyPortString;
|
||||
|
||||
BRLOptionParser *options = [BRLOptionParser new];
|
||||
[options setBanner:@"Usage: %s [-v] [-m auto|global|off] [-u <url>] [-p <port>] [-r <port>]", argv[0]];
|
||||
[options setBanner:@"Usage: %s [-v] [-m auto|global|off] [-u <url>] [-p <port>] [-r <port>] [-x <exception>]", argv[0]];
|
||||
|
||||
// Version
|
||||
[options addOption:"version" flag:'v' description:@"Print the version number." block:^{
|
||||
@ -52,6 +52,11 @@ int main(int argc, const char * argv[])
|
||||
[options addOption:"network-service" flag:'n' description:@"Manual specify the network profile need to set proxy." blockWithArgument:^(NSString* value){
|
||||
[networkServiceKeys addObject:value];
|
||||
}];
|
||||
|
||||
NSMutableSet* proxyExceptions = [NSMutableSet set];
|
||||
[options addOption:"proxy-exception" flag:'x' description:@"Bypass proxy settings for this Host / Domain" blockWithArgument:^(NSString *value) {
|
||||
[proxyExceptions addObject:value];
|
||||
}];
|
||||
|
||||
NSError *error = nil;
|
||||
if (![options parseArgc:argc argv:argv error:&error]) {
|
||||
@ -92,6 +97,12 @@ int main(int argc, const char * argv[])
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
// Bypass these Hosts & Domains if not specified
|
||||
if ([proxyExceptions count] == 0) {
|
||||
NSArray* bypass = @[@"127.0.0.1", @"localhost", @"192.168.0.0/16", @"10.0.0.0/8"];
|
||||
[proxyExceptions addObjectsFromArray:bypass];
|
||||
}
|
||||
|
||||
static AuthorizationRef authRef;
|
||||
static AuthorizationFlags authFlags;
|
||||
@ -158,7 +169,7 @@ int main(int argc, const char * argv[])
|
||||
kCFNetworkProxiesSOCKSPort];
|
||||
[proxies setObject:[NSNumber numberWithInt:1] forKey:(NSString*)
|
||||
kCFNetworkProxiesSOCKSEnable];
|
||||
[proxies setObject:@[@"127.0.0.1", @"localhost", @"192.168.0.0/16", @"10.0.0.0/8"] forKey:(NSString *)kCFNetworkProxiesExceptionsList];
|
||||
[proxies setObject:[proxyExceptions allObjects] forKey:(NSString *)kCFNetworkProxiesExceptionsList];
|
||||
|
||||
if (privoxyPort != 0) {
|
||||
[proxies setObject:@"127.0.0.1" forKey:(NSString *)
|
||||
|
Reference in New Issue
Block a user