Documentation ¶
Index ¶
- Constants
- Variables
- func AddChannel(name, password string, locked bool, c *Client)
- func AddClient(c *Client)
- func Authorize(c *Client, data []byte) error
- func Configure() error
- func Encode(data interface{}) ([]byte, error)
- func FindClient(c *Client) bool
- func JsonAdd(data []byte, key string, value interface{}) ([]byte, error)
- func Launch_fail()
- func Log(level int, msg ...interface{})
- func Log_close()
- func Log_error(msg ...interface{})
- func MessageReceived(c *Client, pmsg []byte)
- func PidfileClear()
- func PidfileSet()
- func RemoveChannel(name string)
- func RemoveClient(c *Client)
- func Shutdown()
- func Start() int
- type AddressList
- type Cfg
- func (c *Cfg) CmdGet()
- func (c *Cfg) CmdSet()
- func (c *Cfg) Cwd(d string)
- func (c *Cfg) Decode(d []byte) error
- func (c *Cfg) DoPanicTask(i *panichandler.Info)
- func (c *Cfg) FindFile() string
- func (c *Cfg) Generate() error
- func (c *Cfg) IsDefault() bool
- func (c *Cfg) Log(level int, msg ...interface{})
- func (c *Cfg) LogWrite()
- func (c *Cfg) Log_error(msg ...interface{})
- func (c *Cfg) Read() error
- func (c *Cfg) ReadFile(f string) ([]byte, error)
- func (c *Cfg) SearchFile(f string) string
- func (c *Cfg) Setup() error
- func (c *Cfg) Write(file string) error
- type Client
- func (c *Client) ClearChannel()
- func (c *Client) GetAuthorized() bool
- func (c *Client) GetChannel() *ClientChannel
- func (c *Client) GetConnectionType() string
- func (c *Client) GetID() int
- func (c *Client) GetIP() string
- func (c *Client) GetVersion() int
- func (c *Client) Send(b []byte)
- func (c *Client) SetAuthorized(auth bool)
- func (c *Client) SetChannel(clientChannel *ClientChannel)
- func (c *Client) SetConnectionType(ctype string)
- func (c *Client) SetID(id int)
- func (c *Client) SetVersion(version int)
- type ClientChannel
- func (c *ClientChannel) Add(client *Client, password string)
- func (c *ClientChannel) EndIfEmpty() bool
- func (c *ClientChannel) Lmotd(ctype, name, password string) string
- func (c *ClientChannel) Name() string
- func (c *ClientChannel) Quit()
- func (c *ClientChannel) Remove(client *Client)
- func (c *ClientChannel) SendAll(msg []byte, client *Client)
- func (c *ClientChannel) SendOthers(msg []byte, client *Client)
- type ClientData
- type Data
- type Server
Constants ¶
Variables ¶
View Source
var ( PID int PID_STR string )
View Source
var ( DEFAULT_CONF_FILE string = "" DEFAULT_CONF_NAME string = "nvdaRemoteServer.json" DEFAULT_CONF_DIR string )
View Source
var ( DEFAULT_GEN_CONF_FILE string = "" DEFAULT_GEN_CONF_DIR bool = false )
View Source
var ( DEFAULT_CERT_FILE string = "" DEFAULT_KEY_FILE string = "" DEFAULT_GEN_CERT_FILE string = "" )
View Source
var ( DEFAULT_MOTD string = "" DEFAULT_MOTD_ALWAYS_DISPLAY bool = false )
View Source
var DEFAULT_ADDRESS string = ":6837"
View Source
var DEFAULT_CONF_READ bool = true
View Source
var DEFAULT_CREATE_DIR bool = false
View Source
var DEFAULT_LAUNCH bool = true
View Source
var DEFAULT_LOG_FILE string = ""
View Source
var DEFAULT_LOG_LEVEL int = 0
View Source
var DEFAULT_PID_FILE string = ""
View Source
var DEFAULT_SEND_ORIGIN bool = true
View Source
var (
EndMessage byte = '\n'
)
View Source
var Launch bool
View Source
var PS string = string(os.PathSeparator)
View Source
var PanicHandle panichandler.Capture = panichandler.Capture{ F: func(i *panichandler.Info) { Log_error("PANIC\n", i.String()) Shutdown() os.Exit(2) }, ExitCode: panichandler.ExitCode, }
View Source
var Servers []*Server
View Source
var (
StopServers context.CancelFunc
)
Functions ¶
func AddChannel ¶
func FindClient ¶
func Launch_fail ¶ added in v0.2.2
func Launch_fail()
func MessageReceived ¶
func PidfileClear ¶ added in v0.3.5
func PidfileClear()
func PidfileSet ¶ added in v0.3.5
func PidfileSet()
func RemoveChannel ¶
func RemoveChannel(name string)
func RemoveClient ¶
func RemoveClient(c *Client)
Types ¶
type AddressList ¶ added in v0.3.1
type AddressList []string
func (*AddressList) Set ¶ added in v0.3.1
func (a *AddressList) Set(v string) error
func (*AddressList) String ¶ added in v0.3.1
func (a *AddressList) String() string
type Cfg ¶ added in v0.4.0
type Cfg struct { PidFile string `json:"pid_file"` LogFile string `json:"log_file"` LogLevel int `json:"log_level"` Addresses AddressList `json:"addresses"` Cert string `json:"cert_file"` Key string `json:"key_file"` Motd string `json:"motd"` MotdAlwaysDisplay bool `json:"motd_always_display"` SendOrigin bool `json:"send_origin"` // contains filtered or unexported fields }
func (*Cfg) DoPanicTask ¶ added in v0.5.4
func (c *Cfg) DoPanicTask(i *panichandler.Info)
func (*Cfg) SearchFile ¶ added in v0.4.0
type Client ¶
type Client struct { sync.Mutex Close context.CancelFunc // contains filtered or unexported fields }
func (*Client) ClearChannel ¶
func (c *Client) ClearChannel()
func (*Client) GetAuthorized ¶ added in v1.1.0
func (*Client) GetChannel ¶
func (c *Client) GetChannel() *ClientChannel
func (*Client) GetConnectionType ¶
func (*Client) GetVersion ¶
func (*Client) SetAuthorized ¶ added in v1.1.0
func (*Client) SetChannel ¶
func (c *Client) SetChannel(clientChannel *ClientChannel)
func (*Client) SetConnectionType ¶
func (*Client) SetVersion ¶
type ClientChannel ¶
type ClientChannel struct { sync.Mutex ClientsAll map[int]*Client ClientsMaster map[int]*Client ClientsSlave map[int]*Client // contains filtered or unexported fields }
func FindChannel ¶
func FindChannel(name string) *ClientChannel
func NewClientChannel ¶
func NewClientChannel(name, password string, locked bool, client *Client) *ClientChannel
func (*ClientChannel) Add ¶
func (c *ClientChannel) Add(client *Client, password string)
func (*ClientChannel) EndIfEmpty ¶
func (c *ClientChannel) EndIfEmpty() bool
func (*ClientChannel) Lmotd ¶ added in v1.1.0
func (c *ClientChannel) Lmotd(ctype, name, password string) string
func (*ClientChannel) Name ¶
func (c *ClientChannel) Name() string
func (*ClientChannel) Quit ¶
func (c *ClientChannel) Quit()
func (*ClientChannel) Remove ¶
func (c *ClientChannel) Remove(client *Client)
func (*ClientChannel) SendAll ¶
func (c *ClientChannel) SendAll(msg []byte, client *Client)
func (*ClientChannel) SendOthers ¶
func (c *ClientChannel) SendOthers(msg []byte, client *Client)
type ClientData ¶
type Data ¶
type Data struct { Type string `json:"type"` Channel string `json:"channel,omitempty"` ConnectionType string `json:"connection_type,omitempty"` Version int `json:"version,omitempty"` Origin int `json:"origin,omitempty"` Key string `json:"key,omitempty"` ID int `json:"user_id,omitempty"` UserIds []int `json:"user_ids,omitempty"` Clients []ClientData `json:"clients,omitempty"` Client *ClientData `json:"client,omitempty"` Error string `json:"error,omitempty"` Motd string `json:"motd,omitempty"` MotdAlwaysDisplay bool `json:"force_display,omitempty"` }
type Server ¶
type Server struct { sync.Mutex sync.WaitGroup Stop context.CancelFunc // contains filtered or unexported fields }
TCP server.
func (*Server) MessageTerminator ¶
Set message terminator.
Click to show internal directories.
Click to hide internal directories.