# README
xenstore-go
Pure Golang implementation of the XenStore protocol.
Contributing
All types of contributions are welcomed, please don't hesitate to open an issue or create a pull request if you find any problems or think anything could be improved.
# Packages
No description provided by the author
# Functions
ControlDomain checks whether the current Xen domain has the 'control_d' capability (will be true on Domain-0).
Error converts a string returned from XenStore to the syscall error it represents.
JoinXenStorePath concatenates parts of a path together with the XenStorePathSeparator, ensuring that exactly 1 instance of the XenStorePathSeparator is used.
NewClient creates a new connected Client and starts the internal Router so that packets can be sent and received correctly by the Client.
NewPacket creates a new Packet instance for sending a payload to XenStore.
NewRouter creates a new instance of the Router struct for Transport t with all of the correct defaults set.
NewUnixSocketClient creates a new Client which will be connected to an underlying UnixSocket.
NewUnixSocketTransport creates a new connected UnixSocketTransport.
NewXenBusClient creates a new Client which will be connected to an underlying XenBus device.
Create a new connected XenBusTransport.
RequestID returns the next unique (for this session) request ID to use when contacting XenStore.
UnixSocketPath gets the current path to the XenStore unix socket on this system.
ValidPath returns a bool representing whether the provided string is a valid XenStore path.
ValidPermissions checks if a set of permission specifications for validity & returns true only if all are valid.
ValidWatchPath returns a bool representing whether the provided string is a valid watch path - a special case of XenStore paths.
XenBusPath returns the path to the XenBus device on this system.
# Constants
No description provided by the author
XenStorePathSeparator is the separator between paths in XenStore.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
# Variables
No description provided by the author
# Structs
Client is a wrapper which allows easier communication with XenStore by providing methods which allow performing normal XenStore functions with minimal effort.
Event implements a XenStore event.
No description provided by the author
No description provided by the author
ReadWriteTransport is an implementation of the Transport interface which works for any io.ReadWriteCloser..
Router provides a way of sending a Packet and receiving the reply in return.
UnixSocketTransport is an implementation of Transport which sends/receives data from XenStore using a unix socket.
XenBusTransport is an implementation of Transport which sends/receives data from XenStore using the special XenBus device on Linux (and possibly other Unix operating systems).
# Interfaces
Transport is an interface for sending and receiving data from XenStore.