mirror of
https://github.com/deneraraujo/OpenVPNAdapter.git
synced 2026-02-11 00:00:08 +08:00
Extract sockets invalidation to the separate method
This commit is contained in:
@@ -21,6 +21,8 @@ NS_ASSUME_NONNULL_BEGIN
|
||||
- (instancetype)initWithPacketFlow:(id<OpenVPNAdapterPacketFlow>)packetFlow NS_DESIGNATED_INITIALIZER;
|
||||
|
||||
- (BOOL)configureSocketsWithError:(NSError **)error;
|
||||
- (void)invalidateSocketsIfNeeded;
|
||||
|
||||
- (void)startReading;
|
||||
|
||||
@end
|
||||
|
||||
@@ -131,6 +131,18 @@ static void SocketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
|
||||
return YES;
|
||||
}
|
||||
|
||||
- (void)invalidateSocketsIfNeeded {
|
||||
if (_openVPNSocket) {
|
||||
CFSocketInvalidate(_openVPNSocket);
|
||||
CFRelease(_openVPNSocket);
|
||||
}
|
||||
|
||||
if (_packetFlowSocket) {
|
||||
CFSocketInvalidate(_packetFlowSocket);
|
||||
CFRelease(_packetFlowSocket);
|
||||
}
|
||||
}
|
||||
|
||||
- (void)startReading {
|
||||
__weak typeof(self) weakSelf = self;
|
||||
|
||||
@@ -170,11 +182,7 @@ static void SocketCallback(CFSocketRef socket, CFSocketCallBackType type, CFData
|
||||
#pragma mark -
|
||||
|
||||
- (void)dealloc {
|
||||
CFSocketInvalidate(_openVPNSocket);
|
||||
CFRelease(_openVPNSocket);
|
||||
|
||||
CFSocketInvalidate(_packetFlowSocket);
|
||||
CFRelease(_packetFlowSocket);
|
||||
[self invalidateSocketsIfNeeded];
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
Reference in New Issue
Block a user