# 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.

# No namespace declaration - these constants go in the global namespace
# of the xfrout messages python module.

% XFROUT_BAD_TSIG_KEY_STRING bad TSIG key string: %1
The TSIG key string as read from the configuration does not represent
a valid TSIG key.

% XFROUT_CC_SESSION_ERROR error reading from cc channel: %1
There was a problem reading from the command and control channel. The
most likely cause is that the msgq daemon is not running.

% XFROUT_CC_SESSION_TIMEOUT_ERROR timeout waiting for cc response
There was a problem reading a response from another module over the
command and control channel. The most likely cause is that the
configuration manager b10-cfgmgr is not running.

% XFROUT_CONFIG_ERROR error found in configuration data: %1
The xfrout process encountered an error when installing the configuration at
startup time.  Details of the error are included in the log message.

% XFROUT_FETCH_REQUEST_ERROR socket error while fetching a request from the auth daemon
There was a socket error while contacting the b10-auth daemon to
fetch a transfer request. The auth daemon may have shutdown.

% XFROUT_HANDLE_QUERY_ERROR error while handling query: %1
There was a general error handling an xfrout query. The error is shown
in the message. In principle this error should not appear, and points
to an oversight catching exceptions in the right place. However, to
ensure the daemon keeps running, this error is caught and reported.

% XFROUT_IMPORT error importing python module: %1
There was an error importing a python module. One of the modules needed
by xfrout could not be found. This suggests that either some libraries
are missing on the system, or the PYTHONPATH variable is not correct.
The specific place where this library needs to be depends on your
system and your specific installation.

% XFROUT_IXFR_MULTIPLE_SOA IXFR client %1: authority section has multiple SOAs
An IXFR request was received with more than one SOA RRs in the authority
section.  The xfrout daemon rejects the request with an RCODE of
FORMERR.

% XFROUT_IXFR_NO_JOURNAL_SUPPORT IXFR client %1, %2: journaling not supported in the data source, falling back to AXFR
An IXFR request was received but the underlying data source did
not support journaling.  The xfrout daemon fell back to AXFR-style
IXFR.

% XFROUT_IXFR_NO_SOA IXFR client %1: missing SOA
An IXFR request was received with no SOA RR in the authority section.
The xfrout daemon rejects the request with an RCODE of FORMERR.

% XFROUT_IXFR_NO_VERSION IXFR client %1, %2: version (%3 to %4) not in journal, falling back to AXFR
An IXFR request was received, but the requested range of differences
were not found in the data source.  The xfrout daemon fell back to
AXFR-style IXFR.

% XFROUT_IXFR_NO_ZONE IXFR client %1, %2: zone not found with journal
The requested zone in IXFR was not found in the data source
even though the xfrout daemon sucessfully found the SOA RR of the zone
in the data source.  This can happen if the administrator removed the
zone from the data source within the small duration between these
operations, but it's more likely to be a bug or broken data source.
Unless you know why this message was logged, and especially if it
happens often, it's advisable to check whether the data source is
valid for this zone.  The xfrout daemon considers it a possible,
though unlikely, event, and returns a response with an RCODE of
NOTAUTH.

% XFROUT_IXFR_UPTODATE IXFR client %1, %2: client version is new enough (theirs=%3, ours=%4)
An IXFR request was received, but the client's SOA version is the same as
or newer than that of the server.  The xfrout server responds to the
request with the answer section being just one SOA of that version.
Note: as of this wrting the 'newer version' cannot be identified due to
the lack of support for the serial number arithmetic.  This will soon
be implemented.

% XFROUT_MODULECC_SESSION_ERROR error encountered by configuration/command module: %1
There was a problem in the lower level module handling configuration and
control commands.  This could happen for various reasons, but the most likely
cause is that the configuration database contains a syntax error and xfrout
failed to start at initialization.  A detailed error message from the module
will also be displayed.

% XFROUT_NEW_CONFIG Update xfrout configuration
New configuration settings have been sent from the configuration
manager. The xfrout daemon will now apply them.

% XFROUT_NEW_CONFIG_DONE Update xfrout configuration done
The xfrout daemon is now done reading the new configuration settings
received from the configuration manager.

% XFROUT_NOTIFY_COMMAND received command to send notifies for %1/%2
The xfrout daemon received a command on the command channel that
NOTIFY packets should be sent for the given zone.

% XFROUT_PARSE_QUERY_ERROR error parsing query: %1
There was a parse error while reading an incoming query. The parse
error is shown in the log message. A remote client sent a packet we
do not understand or support. The xfrout request will be ignored.
In general, this should only occur for unexpected problems like
memory allocation failures, as the query should already have been
parsed by the b10-auth daemon, before it was passed here.

% XFROUT_PROCESS_REQUEST_ERROR error processing transfer request: %1
There was an error in receiving a transfer request from b10-auth.
This is generally an unexpected event, but is possible when, for
example, b10-auth terminates in the middle of forwarding the request.
When this happens it's unlikely to be recoverable with the same
communication session with b10-auth, so b10-xfrout drops it and
waits for a new session.  In any case, this error indicates that
there's something very wrong in the system, so it's advisable to check
the over all status of the BIND 10 system.

% XFROUT_QUERY_DROPPED %1 client %2: request to transfer %3 dropped
The xfrout process silently dropped a request to transfer zone to
given host.  This is required by the ACLs.  The %2 represents the IP
address and port of the peer requesting the transfer, and the %3
represents the zone name and class.

% XFROUT_QUERY_QUOTA_EXCCEEDED %1 client %2: request denied due to quota (%3)
The xfr request was rejected because the server was already handling
the maximum number of allowable transfers as specified in the transfers_out
configuration parameter, which is also shown in the log message.  The
request was immediately responded and terminated with an RCODE of REFUSED.
This can happen for a busy xfrout server, and you may want to increase
this parameter; if the server is being too busy due to requests from
unexpected clients you may want to restrict the legitimate clients
with ACL.

% XFROUT_QUERY_REJECTED %1 client %2: request to transfer %3 rejected
The xfrout process rejected (by REFUSED rcode) a request to transfer zone to
given host. This is because of ACLs.  The %2 represents the IP
address and port of the peer requesting the transfer, and the %3
represents the zone name and class.

% XFROUT_RECEIVED_SHUTDOWN_COMMAND shutdown command received
The xfrout daemon received a shutdown command from the command channel
and will now shut down.

% XFROUT_RECEIVE_FILE_DESCRIPTOR_ERROR error receiving the file descriptor for an XFR connection
There was an error receiving the file descriptor for the transfer
request from b10-auth.  There can be several reasons for this, but
the most likely cause is that b10-auth terminates for some reason
(maybe it's a bug of b10-auth, maybe it's an intentional restart by
the administrator), so depending on how this happens it may or may not
be a serious error.  But in any case this is not expected to happen
frequently, and it's advisable to figure out how this happened if
this message is logged.  Even if this error happens xfrout will reset
its internal state and will keep receiving further requests.  So
if it's just a temporary restart of b10-auth the administrator does
not have to do anything.

% XFROUT_REMOVE_OLD_UNIX_SOCKET_FILE_ERROR error removing unix socket file %1: %2
The unix socket file xfrout needs for contact with the auth daemon
already exists, and needs to be removed first, but there is a problem
removing it. It is likely that we do not have permission to remove
this file. The specific error is show in the log message. The xfrout
daemon will shut down.

% XFROUT_REMOVE_UNIX_SOCKET_FILE_ERROR error clearing unix socket file %1: %2
When shutting down, the xfrout daemon tried to clear the unix socket
file used for communication with the auth daemon. It failed to remove
the file. The reason for the failure is given in the error message.

% XFROUT_SOCKET_SELECT_ERROR error while calling select() on request socket: %1
There was an error while calling select() on the socket that informs
the xfrout daemon that a new xfrout request has arrived. This should
be a result of rare local error such as memory allocation failure and
shouldn't happen under normal conditions. The error is included in the
log message.

% XFROUT_STARTED xfrout started
This informational message is output by xfrout when all initialization
has been completed and it is entering its main loop.

% XFROUT_STOPPED_BY_KEYBOARD keyboard interrupt, shutting down
There was a keyboard interrupt signal to stop the xfrout daemon. The
daemon will now shut down.

% XFROUT_STOPPING the xfrout daemon is shutting down
The current transfer is aborted, as the xfrout daemon is shutting down.

% XFROUT_UNIX_SOCKET_FILE_IN_USE another xfrout process seems to be using the unix socket file %1
While starting up, the xfrout daemon tried to clear the unix domain
socket needed for contacting the b10-auth daemon to pass requests
on, but the file is in use. The most likely cause is that another
xfrout daemon process is still running. This xfrout daemon (the one
printing this message) will not start.

% XFROUT_XFR_TRANSFER_CHECK_ERROR %1 client %2: check for transfer of %3 failed: %4
Pre-response check for an incomding XFR request failed unexpectedly.
The most likely cause of this is that some low level error in the data
source, but it may also be other general (more unlikely) errors such
as memory shortage.  Some detail of the error is also included in the
message.  The xfrout server tries to return a SERVFAIL response in this case.

% XFROUT_XFR_TRANSFER_DONE %1 client %2: transfer of %3 complete
The transfer of the given zone has been completed successfully, or was
aborted due to a shutdown event.

% XFROUT_XFR_TRANSFER_ERROR %1 client %2: error transferring zone %3: %4
An uncaught exception was encountered while sending the response to
an AXFR query. The error message of the exception is included in the
log message, but this error most likely points to incomplete exception
handling in the code.

% XFROUT_XFR_TRANSFER_FAILED %1 client %2: transfer of %3 failed, rcode: %4
A transfer out for the given zone failed. An error response is sent
to the client. The given rcode is the rcode that is set in the error
response. This is either NOTAUTH (we are not authoritative for the
zone), SERVFAIL (our internal database is missing the SOA record for
the zone), or REFUSED (the limit of simultaneous outgoing AXFR
transfers, as specified by the configuration value
Xfrout/max_transfers_out, has been reached).
# Still a TODO, but when implemented, REFUSED can also mean
# the client is not allowed to transfer the zone

% XFROUT_XFR_TRANSFER_STARTED %1 client %2: transfer of zone %3 has started
A transfer out of the given zone has started.
