Documentation ¶
Index ¶
- func Clone(a, b interface{})
- type Client
- type Config
- func (c *Config) ClientMode(ca *openssl.CA, cert *openssl.Cert, dh *openssl.DH, ta *openssl.TA)
- func (c *Config) ClientToClient()
- func (c *Config) Compression()
- func (c *Config) Device(t string)
- func (c *Config) Flag(key string)
- func (c *Config) IpConfig(local, remote string)
- func (c *Config) IpPool(pool string)
- func (c *Config) KeepAlive(interval, timeout int)
- func (c *Config) LoadFile(filename string) error
- func (c *Config) PersistKey()
- func (c *Config) PersistTun()
- func (c *Config) PingTimerRemote()
- func (c *Config) Protocol(p string)
- func (c *Config) Refresh()
- func (c *Config) Remote(r string, port int)
- func (c *Config) Secret(key string)
- func (c *Config) ServerMode(port int, ca *openssl.CA, cert *openssl.Cert, dh *openssl.DH, ta *openssl.TA)
- func (c *Config) Set(key, val string)
- func (c *Config) Validate() (config []string, err error)
- type Event
- type Management
- type Process
- func NewProcess() *Process
- func NewSslClient(remote string, ca *openssl.CA, cert *openssl.Cert, dh *openssl.DH, ...) *Process
- func NewSslServer(ca *openssl.CA, cert *openssl.Cert, dh *openssl.DH, ta *openssl.TA, ...) *Process
- func NewStaticKeyClient(remote, key string, configFile string) *Process
- func NewStaticKeyServer(key string, configFile string) *Process
- func (p *Process) Fire(name string, args ...string)
- func (p *Process) ProcessMonitor(cmd *exec.Cmd, release chan bool)
- func (p *Process) Restart() (err error)
- func (p *Process) SetConfig(c *Config)
- func (p *Process) Shutdown() (err error)
- func (p *Process) Start() (err error)
- func (p *Process) Stop() (err error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Config ¶
type Config struct {
// contains filtered or unexported fields
}
func (*Config) ClientMode ¶
func (c *Config) ClientMode(ca *openssl.CA, cert *openssl.Cert, dh *openssl.DH, ta *openssl.TA)
func (*Config) ClientToClient ¶
func (c *Config) ClientToClient()
func (*Config) Compression ¶
func (c *Config) Compression()
func (*Config) LoadFile ¶
* Loads configuration from the given file, A configuration is only valid if: 1. It is a string- In this case, append a # symbol at the end to ignore 2. Array of flags-- In this case, append # symbol at the end of the flag to ignore it 3. Array of push params-- Append # as above to ignore a push
func (*Config) PersistKey ¶
func (c *Config) PersistKey()
func (*Config) PersistTun ¶
func (c *Config) PersistTun()
func (*Config) PingTimerRemote ¶
func (c *Config) PingTimerRemote()
func (*Config) ServerMode ¶
type Management ¶
type Management struct { Conn *Process ManagementRead chan string `json:"-"` ManagementWrite chan string `json:"-"` Path string // contains filtered or unexported fields }
func NewManagement ¶
func NewManagement(conn *Process) *Management
func (*Management) Shutdown ¶
func (m *Management) Shutdown()
func (*Management) Start ¶
func (m *Management) Start() (path string, err error)
type Process ¶
type Process struct { StdOut chan string `json:"-"` StdErr chan string `json:"-"` Events chan *Event `json:"-"` Stopped chan bool `json:"-"` Env map[string]string Clients map[string]*Client // contains filtered or unexported fields }
func NewProcess ¶
func NewProcess() *Process
func NewSslClient ¶
func NewSslServer ¶
func NewStaticKeyClient ¶
func NewStaticKeyServer ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.