Documentation ¶
Overview ¶
various comm ZMq routines shared be all commands
Index ¶
- func CloseClients(clients []*Client)
- func MakeKeyPair(publicKeyFileName string, privateKeyFileName string) error
- func NewBind(log *logger.L, socketType zmq.Type, zapDomain string, privateKey []byte, ...) (*zmq.Socket, *zmq.Socket, error)
- func NewServerSocket(socketType zmq.Type, zapDomain string, privateKey []byte, publicKey []byte, ...) (*zmq.Socket, error)
- func NewSignalPair(signal string) (*zmq.Socket, *zmq.Socket, error)
- func ReadKeyFile(keyFileName string) ([]byte, bool, error)
- func ReadPrivateKeyFile(keyFileName string) ([]byte, error)
- func ReadPublicKeyFile(keyFileName string) ([]byte, error)
- func StartAuthentication() error
- type Client
- func (client *Client) BeginPolling(poller *Poller, events zmq.State) *zmq.Socket
- func (client *Client) Close() error
- func (client *Client) Connect(conn *util.Connection, serverPublicKey []byte) error
- func (client *Client) IsConnected() bool
- func (client *Client) IsConnectedTo(serverPublicKey []byte) bool
- func (client *Client) Receive(flags zmq.Flag) ([][]byte, error)
- func (client *Client) Reconnect() error
- func (client *Client) ReconnectReturningSocket() (*zmq.Socket, error)
- func (client *Client) Send(items ...interface{}) error
- func (client Client) String() string
- type Poller
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func MakeKeyPair ¶
create a new public/private keypair and write them to separate files
func NewBind ¶
func NewBind(log *logger.L, socketType zmq.Type, zapDomain string, privateKey []byte, publicKey []byte, listen []*util.Connection) (*zmq.Socket, *zmq.Socket, error)
bind a list of addresses creates up to 2 sockets for separate IPv4 and IPv6 traffic
func NewServerSocket ¶
func NewServerSocket(socketType zmq.Type, zapDomain string, privateKey []byte, publicKey []byte, v6 bool) (*zmq.Socket, error)
create a socket suitable for a server side connection
func NewSignalPair ¶
return a pair of connected push/pull sockets for shutdown signalling
func ReadKeyFile ¶
read a public key from a file returning it as a 32 byte string
func ReadPrivateKeyFile ¶
read a private key from a file returning it as a 32 byte string
func ReadPublicKeyFile ¶
read a public key from a file returning it as a 32 byte string
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
structure to hold a client connection
func ClientFromSocket ¶ added in v0.3.23
find the client corresponding to a socket
func NewClient ¶
func NewClient(socketType zmq.Type, privateKey []byte, publicKey []byte, timeout time.Duration) (*Client, error)
create a client socket ususlly of type zmq.REQ or zmq.SUB
func (*Client) BeginPolling ¶ added in v0.3.23
add poller to client
func (*Client) Connect ¶
func (client *Client) Connect(conn *util.Connection, serverPublicKey []byte) error
disconnect old address and connect to new
func (*Client) IsConnectedTo ¶
check if connected to a specific node
func (*Client) ReconnectReturningSocket ¶ added in v0.3.23
close and reopen the connection
type Poller ¶ added in v0.3.23
structure to hold a poller
func NewPoller ¶ added in v0.3.23
func NewPoller() *Poller
create a poller this is just to encapsulate the zmq poller to allow removal of a socket from a socket