Declare tun factory and return its instance in new_tun_factory method

This commit is contained in:
Sergey Abramchuk
2017-04-15 15:40:32 +03:00
parent ef06fec9f7
commit 44f826cb12
3 changed files with 38 additions and 1 deletions
+2 -1
View File
@@ -10,6 +10,7 @@
#import <Foundation/Foundation.h>
#import "TUNFactory.h"
#import "OpenVPNAdapter+Internal.h"
#import "OpenVPNClient.h"
@@ -18,7 +19,7 @@ OpenVPNClient::OpenVPNClient(void *adapter) : ClientAPI::OpenVPNClient() {
}
TunClientFactory* OpenVPNClient::new_tun_factory(const ExternalTun::Config& conf, const OptionList& opt) {
return nullptr;
return new TUNFactory();
}
bool OpenVPNClient::tun_builder_new() {
+18
View File
@@ -0,0 +1,18 @@
//
// TUNFactory.h
// OpenVPN Adapter
//
// Created by Sergey Abramchuk on 15.04.17.
//
//
#import <openvpn/tun/client/tunbase.hpp>
using namespace openvpn;
class TUNFactory: public TunClientFactory {
public:
virtual TunClient::Ptr new_tun_client_obj(openvpn_io::io_context& io_context,
TunClientParent& parent,
TransportClient* transcli) override;
};
+18
View File
@@ -0,0 +1,18 @@
//
// TUNFactory.m
// OpenVPN Adapter
//
// Created by Sergey Abramchuk on 15.04.17.
//
//
#import "TUNFactory.h"
// !!! tuncli.hpp may be used as example of implementation
TunClient::Ptr TUNFactory::new_tun_client_obj(openvpn_io::io_context& io_context,
TunClientParent& parent,
TransportClient* transcli)
{
return nullptr;
}