client

package
v0.6.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 23, 2019 License: GPL-3.0 Imports: 9 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	Config
	// contains filtered or unexported fields
}

Client represents OpenVPN client.

func New

func New(config Config) *Client

New creates new OpenVPN client.

func (*Client) Connect

func (c *Client) Connect() (err error)

Connect connects.

func (*Client) Disconnect

func (c *Client) Disconnect() error

Disconnect closes connection, if there is no connection it does nothing.

func (*Client) GetLoadStats

func (c *Client) GetLoadStats() (*LoadStats, error)

GetLoadStats GetLoadStats.

func (*Client) GetUsers

func (c *Client) GetUsers() (Users, error)

GetUsers GetUsers.

func (*Client) GetVersion

func (c *Client) GetVersion() (*Version, error)

GetVersion GetVersion.

func (*Client) IsConnected

func (c *Client) IsConnected() bool

IsConnected IsConnected.

type Config

type Config struct {
	Address        string
	ReuseRecord    bool
	ConnectTimeout time.Duration
	ReadTimeout    time.Duration
	WriteTimeout   time.Duration
}

Config represents OpenVPN client config.

type LoadStats

type LoadStats struct {
	NumOfClients int64
	BytesIn      int64
	BytesOut     int64
}

type User

type User struct {
	CommonName     string
	RealAddress    string
	VirtualAddress string
	BytesReceived  int64
	BytesSent      int64
	ConnectedSince int64
	Username       string
}

type Users

type Users []User

type Version

type Version struct {
	Major      int64
	Minor      int64
	Patch      int64
	Management int64
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL