# Copyright (C) 2011  Internet Systems Consortium, Inc. ("ISC")
#
# Permission to use, copy, modify, and/or distribute this software for any
# purpose with or without fee is hereby granted, provided that the above
# copyright notice and this permission notice appear in all copies.
#
# THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH
# REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
# AND FITNESS.  IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT,
# INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
# LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
# OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
# PERFORMANCE OF THIS SOFTWARE.

$NAMESPACE isc::server_common

# \brief Messages for the server_common library

% SOCKETREQUESTOR_CREATED Socket requestor created for application %1
Debug message.  A socket requesor (client of the socket creator) is created
for the corresponding application.  Normally this should happen at most
one time throughout the lifetime of the application.

% SOCKETREQUESTOR_DESTROYED Socket requestor destoryed
Debug message.  The socket requestor created at SOCKETREQUESTOR_CREATED
has been destroyed.  This event is generally unexpected other than in
test cases.

% SOCKETREQUESTOR_GETSOCKET Received a %1 socket for [%2]:%3, FD=%4, token=%5, path=%6
Debug message. The socket requestor for the corresponding application
has requested a socket for a set of address, port and protocol (shown
in the log message) and successfully got it from the creator.  The
corresponding file descriptor and the associated "token" (an internal
ID used between the creator and requestor) are shown in the log
message.

% SOCKETREQUESTOR_RELEASESOCKET Released a socket of token %1
Debug message.  The socket requestor has released a socket passed by
the creator.  The associated token of the socket is shown in the
log message.  If the corresponding SOCKETREQUESTOR_GETSOCKET was logged
more detailed information of the socket can be identified by matching
the token.

% SRVCOMM_ADDRESSES_NOT_LIST the address and port specification is not a list in %1
This points to an error in configuration. What was supposed to be a list of
IP address - port pairs isn't a list at all but something else.

% SRVCOMM_ADDRESS_FAIL failed to listen on addresses (%1)
The server failed to bind to one of the address/port pair it should according
to configuration, for reason listed in the message (usually because that pair
is already used by other service or missing privileges). The server will try
to recover and bind the address/port pairs it was listening to before (if any).

% SRVCOMM_ADDRESS_MISSING address specification is missing "address" or "port" element in %1
This points to an error in configuration. An address specification in the
configuration is missing either an address or port and so cannot be used. The
specification causing the error is given in the message.

% SRVCOMM_ADDRESS_TYPE address specification type is invalid in %1
This points to an error in configuration. An address specification in the
configuration malformed. The specification causing the error is given in the
message. A valid specification contains an address part (which must be a string
and must represent a valid IPv4 or IPv6 address) and port (which must be an
integer in the range valid for TCP/UDP ports on your system).

% SRVCOMM_ADDRESS_UNRECOVERABLE failed to recover original addresses also (%1)
The recovery of old addresses after SRVCOMM_ADDRESS_FAIL also failed for
the reason listed.

The condition indicates problems with the server and/or the system on
which it is running.  The server will continue running to allow
reconfiguration, but will not be listening on any address or port until
an administrator does so.

% SRVCOMM_ADDRESS_VALUE address to set: %1#%2
Debug message. This lists one address and port value of the set of
addresses we are going to listen on (eg. there will be one log message
per pair). This appears only after SRVCOMM_SET_LISTEN, but might
be hidden, as it has higher debug level.

% SRVCOMM_EXCEPTION_ALLOC exception when allocating a socket: %1
The process tried to allocate a socket using the socket creator, but an error
occurred. But it is not one of the errors we are sure are "safe". In this case
it is unclear if the unsuccessful communication left the process and the bind10
process in inconsistent state, so the process is going to abort to prevent
further problems in that area.

This is probably a bug in the code, but it could be caused by other unusual
conditions (like insufficient memory, deleted socket file used for
communication).

% SRVCOMM_KEYS_DEINIT deinitializing TSIG keyring
Debug message indicating that the server is deinitializing the TSIG keyring.

% SRVCOMM_KEYS_INIT initializing TSIG keyring
Debug message indicating that the server is initializing the global TSIG
keyring. This should be seen only at server start.

% SRVCOMM_KEYS_UPDATE updating TSIG keyring
Debug message indicating new keyring is being loaded from configuration (either
on startup or as a result of configuration update).

% SRVCOMM_PORT_RANGE port out of valid range (%1 in %2)
This points to an error in configuration. The port in an address
specification is outside the valid range of 0 to 65535.

% SRVCOMM_SET_LISTEN setting addresses to listen to
Debug message, noting that the server is about to start listening on a
different set of IP addresses and ports than before.

% SRVCOMM_UNKNOWN_EXCEPTION_ALLOC unknown exception when allocating a socket
The situation is the same as in the SRVCOMM_EXCEPTION_ALLOC case, but further
details about the error are unknown, because it was signaled by throwing
something not being an exception. This is definitely a bug.
