mirror of
https://github.com/deneraraujo/OpenVPNAdapter.git
synced 2026-04-06 00:00:03 +08:00
Return transport stats and interface stats
This commit is contained in:
@@ -13,6 +13,8 @@
|
|||||||
@class OpenVPNProperties;
|
@class OpenVPNProperties;
|
||||||
@class OpenVPNCredentials;
|
@class OpenVPNCredentials;
|
||||||
@class OpenVPNConnectionInfo;
|
@class OpenVPNConnectionInfo;
|
||||||
|
@class OpenVPNTransportStats;
|
||||||
|
@class OpenVPNInterfaceStats;
|
||||||
@class NEPacketTunnelNetworkSettings;
|
@class NEPacketTunnelNetworkSettings;
|
||||||
|
|
||||||
// TODO: Add documentation to properties and methods
|
// TODO: Add documentation to properties and methods
|
||||||
@@ -102,10 +104,20 @@ NS_SWIFT_NAME(handle(logMessage:));
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
Return information about the most recent connection. Will be available
|
Return information about the most recent connection. Will be available
|
||||||
after an event of type "CONNECTED, otherwise return nil
|
after an event of type "CONNECTED, otherwise return nil.
|
||||||
*/
|
*/
|
||||||
@property (nullable, readonly, nonatomic) OpenVPNConnectionInfo *connectionInfo;
|
@property (nullable, readonly, nonatomic) OpenVPNConnectionInfo *connectionInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return transport stats
|
||||||
|
*/
|
||||||
|
@property (nonnull, readonly, nonatomic) OpenVPNTransportStats *transportStats;
|
||||||
|
|
||||||
|
/**
|
||||||
|
Return tun stats
|
||||||
|
*/
|
||||||
|
@property (nonnull, readonly, nonatomic) OpenVPNInterfaceStats *interfaceStats;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
<#Description#>
|
<#Description#>
|
||||||
|
|
||||||
|
|||||||
@@ -14,13 +14,15 @@
|
|||||||
|
|
||||||
#import <NetworkExtension/NetworkExtension.h>
|
#import <NetworkExtension/NetworkExtension.h>
|
||||||
|
|
||||||
|
#import "OpenVPNClient.h"
|
||||||
#import "OpenVPNError.h"
|
#import "OpenVPNError.h"
|
||||||
#import "OpenVPNEvent.h"
|
#import "OpenVPNEvent.h"
|
||||||
#import "OpenVPNConfiguration+Internal.h"
|
#import "OpenVPNConfiguration+Internal.h"
|
||||||
#import "OpenVPNCredentials+Internal.h"
|
#import "OpenVPNCredentials+Internal.h"
|
||||||
#import "OpenVPNProperties+Internal.h"
|
#import "OpenVPNProperties+Internal.h"
|
||||||
#import "OpenVPNConnectionInfo+Internal.h"
|
#import "OpenVPNConnectionInfo+Internal.h"
|
||||||
#import "OpenVPNClient.h"
|
#import "OpenVPNTransportStats+Internal.h"
|
||||||
|
#import "OpenVPNInterfaceStats+Internal.h"
|
||||||
#import "OpenVPNAdapter.h"
|
#import "OpenVPNAdapter.h"
|
||||||
#import "OpenVPNAdapter+Internal.h"
|
#import "OpenVPNAdapter+Internal.h"
|
||||||
#import "OpenVPNAdapter+Public.h"
|
#import "OpenVPNAdapter+Public.h"
|
||||||
@@ -139,6 +141,16 @@ NSString * const OpenVPNAdapterErrorEventKey = @"me.ss-abramchuk.openvpn-adapter
|
|||||||
return info.defined ? [[OpenVPNConnectionInfo alloc] initWithConnectionInfo:info] : nil;
|
return info.defined ? [[OpenVPNConnectionInfo alloc] initWithConnectionInfo:info] : nil;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (OpenVPNTransportStats *)transportStats {
|
||||||
|
ClientAPI::TransportStats stats = self.vpnClient->transport_stats();
|
||||||
|
return [[OpenVPNTransportStats alloc] initWithTransportStats:stats];
|
||||||
|
}
|
||||||
|
|
||||||
|
- (OpenVPNInterfaceStats *)interfaceStats {
|
||||||
|
ClientAPI::InterfaceStats stats = self.vpnClient->tun_stats();
|
||||||
|
return [[OpenVPNInterfaceStats alloc] initWithInterfaceStats:stats];
|
||||||
|
}
|
||||||
|
|
||||||
#pragma mark Client Configuration
|
#pragma mark Client Configuration
|
||||||
|
|
||||||
- (OpenVPNProperties *)applyConfiguration:(nonnull OpenVPNConfiguration *)configuration error:(out NSError * __nullable * __nullable)error {
|
- (OpenVPNProperties *)applyConfiguration:(nonnull OpenVPNConfiguration *)configuration error:(out NSError * __nullable * __nullable)error {
|
||||||
|
|||||||
Reference in New Issue
Block a user