# Packages
No description provided by the author
# Functions
ConfigureOptions accepts a flag set and augment it with NATS Server specific flags.
GenTLSConfig loads TLS related configuration parameters.
IsValidLiteralSubject returns true if a subject is valid and literal (no wildcards), false otherwise.
IsValidSubject returns true if a subject is valid, false otherwise.
MergeOptions will merge two options giving preference to the flagOpts if the item is present.
New will setup a new server struct after parsing the options.
New will create a default sublist.
PrintAndDie is exported for access in other packages.
PrintServerAndExit will print our version and exit.
PrintTLSHelpAndDie prints TLS usage and exits.
ProcessCommandLineArgs takes the command line arguments validating and setting flags for handling in case any sub command was present.
ProcessConfigFile processes a configuration file.
ProcessSignal sends the given signal command to the given process.
RemoveSelfReference removes this server from an array of routes.
ResponseHandler handles responses for monitoring routes.
RoutesFromStr parses route URLs from a string.
Run starts the NATS server.
SetProcessName allows to change the expected name of the process.
# Constants
ACCEPT_MAX_SLEEP is the maximum acceptable sleep times on temporary errors.
ACCEPT_MIN_SLEEP is the minimum acceptable sleep times on temporary errors.
AUTH_TIMEOUT is the authorization wait time.
No description provided by the author
No description provided by the author
No description provided by the author
By connection ID.
By the amount of inactivity.
By amount of bytes received.
By number of messages received.
By the last activity.
By amount of bytes sent.
By number of messages sent.
By amount of data in bytes waiting to be sent to client.
By the reason for a closed connection.
By connection start time, same as CID.
By the stop time for a closed connection.
By number of subscriptions.
By the amount of time connections exist.
CLIENT is an end user.
No description provided by the author
This signals a client can receive more then the original INFO block.
Original Client protocol from 2009.
Valid Command values.
Valid Command values.
Valid Command values.
Valid Command values.
No description provided by the author
No description provided by the author
Parser constants.
No description provided by the author
HTTP endpoints.
Route protocol constants.
CR_LF string.
DEFAULT_FLUSH_DEADLINE is the write/flush deadlines.
DEFAULT_HOST defaults to all interfaces.
DEFAULT_HTTP_PORT is the default monitoring port.
DEFAULT_LAME_DUCK_DURATION is the time in which the server spreads the closing of clients when signaled to go in lame duck mode.
DEFAULT_MAX_CLOSED_CLIENTS.
DEFAULT_MAX_CONNECTIONS is the default maximum connections allowed.
DEFAULT_PING_INTERVAL is how often pings are sent to clients and routes.
DEFAULT_PING_MAX_OUT is maximum allowed pings outstanding before disconnect.
DEFAULT_PORT is the default port for client connections.
DEFAULT_REMOTE_QSUBS_SWEEPER.
DEFAULT_ROUTE_CONNECT Route solicitation intervals.
DEFAULT_ROUTE_DIAL Route dial timeout.
DEFAULT_ROUTE_RECONNECT Route reconnect intervals.
DefaultConnListSize is the default size of the connection list.
DefaultSubListSize is the default size of the subscriptions list.
No description provided by the author
This route was explicitly configured.
This route we learned from speaking to other routes.
Parser constants.
Route protocol constants.
LEN_CR_LF hold onto the computed size.
MAX_CONTROL_LINE_SIZE is the maximum allowed protocol control line size.
MAX_MSG_ARGS Maximum possible number of arguments from MSG proto.
MAX_PAYLOAD_SIZE is the maximum allowed payload size.
MAX_PENDING_SIZE is the maximum outbound pending bytes per client.
MAX_PUB_ARGS Maximum possible number of arguments from PUB proto.
No description provided by the author
No description provided by the author
No description provided by the author
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
Parser constants.
No description provided by the author
PROTO is the currently supported protocol.
PROTO_SNIPPET_SIZE is the default size of proto to print on parse errors.
No description provided by the author
Parser constants.
FIXME(dlc) - Make these reserved and reject if they come in as a sid from a client connection.
FIXME(dlc) - Make these reserved and reject if they come in as a sid from a client connection.
RANDOM_PORT is the value for port that, when supplied, will cause the server to listen on a randomly-chosen available port.
No description provided by the author
HTTP endpoints.
ROUTER is another router in the cluster.
No description provided by the author
HTTP endpoints.
FIXME(dlc) - Make these reserved and reject if they come in as a sid from a client connection.
No description provided by the author
No description provided by the author
No description provided by the author
HTTP endpoints.
No description provided by the author
Parser constants.
HTTP endpoints.
TLS_TIMEOUT is the TLS wait time.
No description provided by the author
Parser constants.
HTTP endpoints.
VERSION is the current version for the server.
No description provided by the author
No description provided by the author
# Variables
ErrAuthorization represents an error condition on failed authorization.
ErrAuthTimeout represents an error condition on failed authorization due to timeout.
ErrBadClientProtocol signals a client requested an invalud client protocol.
ErrClientConnectedToRoutePort represents an error condition when a client attempted to connect to the route listen port.
ErrConnectionClosed represents an error condition on a closed connection.
Sublist related errors.
ErrMaxControlLine represents an error condition when the control line is too big.
ErrMaxPayload represents an error condition when the payload is too big.
Sublist related errors.
ErrReservedPublishSubject represents an error condition when sending to a reserved subject, e.g.
ErrTooManyConnections signals a client that the maximum number of connections supported by the server has been reached.
ErrTooManySubs signals a client that the maximum number of subscriptions per connection has been reached.
FlagSnapshot captures the server options as specified by CLI flags at startup.
# Structs
ClusterOpts are options for clusters.
ConnInfo has detailed information on a per connection basis.
Connz represents detailed information on current client connections.
ConnzOptions are the options passed to Connz().
Info is the information sent to clients to help them understand information about this server.
Options block for gnatsd server.
Permissions are the allowed subjects on a per publish or subscribe basis.
Ports describes URLs that the server can be contacted in.
RouteInfo has detailed information on a per connection basis.
RoutePermissions are similar to user permissions but describe what a server can import/export from and to another server.
Routez represents detailed information on current client connections.
RoutezOptions are options passed to Routez.
Server is our main struct.
No description provided by the author
SubjectPermission is an individual allow and deny struct for publish and subscribe authorizations.
A Sublist stores and efficiently retrieves subscriptions.
A result structure better optimized for queue subs.
Public stats for the sublist.
Subsz represents detail information on current connections.
SubszOptions are the options passed to Subsz.
TLSConfigOpts holds the parsed tls config information, used with flag parsing.
User is for multiple accounts/users.
Varz will output server information on the monitoring port at /varz.
VarzOptions are the options passed to Varz().
# Interfaces
Authentication is an interface for implementing authentication.
ClientAuthentication is an interface for client authentication.
Logger interface of the NATS Server.