14#ifndef OPENVPN_SERVER_MANAGE_H
15#define OPENVPN_SERVER_MANAGE_H
36enum Type :
unsigned short;
42struct ovpn_tun_head_ipma;
49struct SendBase :
public virtual RC<thread_unsafe_refcount>
66 virtual void ipma_notify(
const struct ovpn_tun_head_ipma &ipma) = 0;
73 const AuthStatus::Type auth_status,
74 const std::string &reason,
75 const std::string &client_reason) = 0;
79 const std::string *username,
80 const bool challenge) = 0;
86 virtual Json::Value
doma_acl(
const Json::Value &root) = 0;
120 unsigned int &keepalive_timeout) = 0;
128struct Recv :
public virtual RC<thread_unsafe_refcount>
136 const std::string &client_reason) = 0;
138 virtual void push_reply(std::vector<BufferPtr> &&push_msgs) = 0;
142 const std::string &reason,
143 const std::string &client_reason) = 0;
Reference count base class for objects tracked by RCPtr. Disallows copying and assignment.
virtual Send::Ptr new_man_obj(Recv *instance)=0
virtual bool should_preserve_session_id()=0
virtual void schedule_auth_pending_timeout(const unsigned int seconds)=0
virtual void post_cc_msg(BufferPtr &&msg)=0
virtual TunClientInstance::NativeHandle tun_native_handle()=0
virtual void relay(const IP::Addr &target, const int port)=0
virtual PeerStats stats_poll()=0
virtual void auth_failed(const std::string &reason, const std::string &client_reason)=0
virtual void push_halt_restart_msg(const HaltRestart::Type type, const std::string &reason, const std::string &client_reason)=0
virtual void schedule_disconnect(const unsigned int seconds)=0
virtual void push_reply(std::vector< BufferPtr > &&push_msgs)=0
virtual std::uint64_t instance_id() const =0
virtual void post_info_user(BufferPtr &&info)=0
virtual std::string to_string_debug() const =0
virtual void disconnect_user(const HaltRestart::Type type, const AuthStatus::Type auth_status, const std::string &reason, const std::string &client_reason)=0
virtual bool is_stopped() const =0
virtual std::string describe_user(const bool show_userprop)=0
virtual Json::Value doma_acl(const Json::Value &root)=0
virtual void userprop_local_update()=0
virtual void ipma_notify(const struct ovpn_tun_head_ipma &ipma)=0
virtual std::string instance_name() const =0
virtual void set_acl_index(const int acl_index, const std::string *username, const bool challenge)=0
virtual void auth_request(const AuthCreds::Ptr &auth_creds, const AuthCert::Ptr &auth_cert, const PeerAddr::Ptr &peer_addr)=0
virtual void app_control(const std::string &msg)=0
virtual void keepalive_override(unsigned int &keepalive_ping, unsigned int &keepalive_timeout)=0
virtual void pre_stop()=0
virtual void float_notify(const PeerAddr::Ptr &addr)=0
virtual void stats_notify(const PeerStats &ps, const bool final)=0
virtual void push_request(ProtoContext::ProtoConfig::Ptr pconf)=0