mirror of
https://github.com/deneraraujo/OpenVPNAdapter.git
synced 2026-02-11 00:00:08 +08:00
Check for UNSPEC gateway within adapter
This commit is contained in:
@@ -145,12 +145,14 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
|
||||
return NO;
|
||||
}
|
||||
|
||||
NSString *defaultGateway = [gateway length] == 0 || [gateway isEqualToString:@"UNSPEC"] ? nil : gateway;
|
||||
|
||||
if (isIPv6) {
|
||||
if (!self.tunnelSettingsIPv6.initialized) {
|
||||
self.tunnelSettingsIPv6.initialized = YES;
|
||||
}
|
||||
|
||||
self.defaultGatewayIPv6 = gateway;
|
||||
self.defaultGatewayIPv6 = defaultGateway
|
||||
|
||||
[self.tunnelSettingsIPv6.localAddresses addObject:address];
|
||||
[self.tunnelSettingsIPv6.prefixLengths addObject:prefixLength];
|
||||
@@ -159,7 +161,7 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
|
||||
self.tunnelSettingsIPv4.initialized = YES;
|
||||
}
|
||||
|
||||
self.defaultGatewayIPv4 = gateway;
|
||||
self.defaultGatewayIPv4 = defaultGateway;
|
||||
|
||||
[self.tunnelSettingsIPv4.localAddresses addObject:address];
|
||||
[self.tunnelSettingsIPv4.prefixLengths addObject:prefixLength];
|
||||
|
||||
@@ -26,7 +26,7 @@ bool OpenVPNClient::tun_builder_set_remote_address(const std::string &address, b
|
||||
|
||||
bool OpenVPNClient::tun_builder_add_address(const std::string &address, int prefix_length, const std::string &gateway, bool ipv6, bool net30) {
|
||||
NSString *localAddress = [NSString stringWithUTF8String:address.c_str()];
|
||||
NSString *gatewayAddress = !gateway.empty() && gateway.compare("UNSPEC") != 0 ? [NSString stringWithUTF8String:gateway.c_str()] : nil;
|
||||
NSString *gatewayAddress = [NSString stringWithUTF8String:gateway.c_str()];
|
||||
|
||||
return [(__bridge OpenVPNAdapter *)adapter addLocalAddress:localAddress prefixLength:@(prefix_length) gateway:gatewayAddress isIPv6:ipv6];
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user