FIx spurious static analysis warnings relating to CFSocketRef (#24)

This commit is contained in:
Jonathan Downing
2017-09-23 10:25:35 +01:00
committed by Sergey Abramchuk
parent 73d593fe4c
commit 435663953e

View File

@@ -33,14 +33,13 @@
#import "OpenVPNAdapter+Public.h"
@interface OpenVPNAdapter () {
CFSocketRef _tunSocket;
CFSocketRef _vpnSocket;
__weak id<OpenVPNAdapterDelegate> _delegate;
}
@property (assign, nonatomic) OpenVPNClient *vpnClient;
@property (assign, nonatomic) CFSocketRef vpnSocket;
@property (assign, nonatomic) CFSocketRef tunSocket;
@property (strong, nonatomic) NSString *remoteAddress;
@property (strong, nonatomic) NSString *defaultGatewayIPv6;
@@ -55,17 +54,9 @@
@property (weak, nonatomic) id<OpenVPNAdapterPacketFlow> packetFlow;
- (void)readTUNPackets;
- (void)readVPNPacket:(NSData *)packet;
- (OpenVPNAdapterEvent)eventByName:(NSString *)eventName;
- (OpenVPNAdapterError)errorByName:(NSString *)errorName;
- (NSString *)reasonForError:(OpenVPNAdapterError)error;
- (NSString *)subnetFromPrefixLength:(NSNumber *)prefixLength;
- (void)performAsyncBlock:(void (^)())block;
@end
@implementation OpenVPNAdapter (Internal)
@implementation OpenVPNAdapter
#pragma mark Sockets Configuration
@@ -96,15 +87,15 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
CFSocketContext socketCtxt = {0, (__bridge void *)self, NULL, NULL, NULL};
self.vpnSocket = CFSocketCreateWithNative(kCFAllocatorDefault, sockets[0], kCFSocketDataCallBack, &socketCallback, &socketCtxt);
self.tunSocket = CFSocketCreateWithNative(kCFAllocatorDefault, sockets[1], kCFSocketNoCallBack, NULL, NULL);
_vpnSocket = CFSocketCreateWithNative(kCFAllocatorDefault, sockets[0], kCFSocketDataCallBack, &socketCallback, &socketCtxt);
_tunSocket = CFSocketCreateWithNative(kCFAllocatorDefault, sockets[1], kCFSocketNoCallBack, NULL, NULL);
if (!self.vpnSocket || !self.tunSocket) {
if (!_vpnSocket || !_tunSocket) {
NSLog(@"Failed to create core foundation sockets from native sockets");
return NO;
}
CFRunLoopSourceRef tunSocketSource = CFSocketCreateRunLoopSource(kCFAllocatorDefault, self.vpnSocket, 0);
CFRunLoopSourceRef tunSocketSource = CFSocketCreateRunLoopSource(kCFAllocatorDefault, _vpnSocket, 0);
CFRunLoopAddSource(CFRunLoopGetMain(), tunSocketSource, kCFRunLoopDefaultMode);
CFRelease(tunSocketSource);
@@ -327,7 +318,7 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
if (self.packetFlow) {
[self readTUNPackets];
return CFSocketGetNative(self.tunSocket);
return CFSocketGetNative(_tunSocket);
} else {
return -1;
}
@@ -412,10 +403,6 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
}
}
@end
@implementation OpenVPNAdapter (Public)
#pragma mark Properties
+ (NSString *)copyright {
@@ -546,10 +533,6 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
self.vpnClient->stop();
}
@end
@implementation OpenVPNAdapter
#pragma mark Initialization
- (instancetype)init
@@ -582,7 +565,7 @@ static void socketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
NSData *packet = [self prepareVPNPacket:data protocol:protocols[idx]];
// Send data to the VPN server
CFSocketSendData(self.vpnSocket, NULL, (CFDataRef)packet, 0.05);
CFSocketSendData(_vpnSocket, NULL, (CFDataRef)packet, 0.05);
}];
}