# Copyright (C) 2012-2014  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::dhcp

% DHCPSRV_ADDRESS4_ALLOC_ERROR error during attempt to allocate an IPv4 address: %1
An error occurred during an attempt to allocate an IPv4 address, the
reason for the failure being contained in the message.  The server will
return a message to the client refusing a lease.

% DHCPSRV_ADDRESS4_ALLOC_FAIL failed to allocate an IPv4 address after %1 attempt(s)
THE DHCP allocation engine gave up trying to allocate an IPv4 address
after the specified number of attempts.  This probably means that the
address pool from which the allocation is being attempted is either
empty, or very nearly empty.  As a result, the client will have been
refused a lease.

This message may indicate that your address pool is too small for the
number of clients you are trying to service and should be expanded.
Alternatively, if the you know that the number of concurrently active
clients is less than the addresses you have available, you may want to
consider reducing the lease lifetime.  In this way, addresses allocated
to clients that are no longer active on the network will become available
available sooner.

% DHCPSRV_ADDRESS6_ALLOC_ERROR error during attempt to allocate an IPv6 address: %1
An error occurred during an attempt to allocate an IPv6 address, the
reason for the failure being contained in the message.  The server will
return a message to the client refusing a lease.

% DHCPSRV_ADDRESS6_ALLOC_FAIL failed to allocate an IPv6 address after %1 attempt(s)
The DHCP allocation engine gave up trying to allocate an IPv6 address
after the specified number of attempts.  This probably means that the
address pool from which the allocation is being attempted is either
empty, or very nearly empty.  As a result, the client will have been
refused a lease.

This message may indicate that your address pool is too small for the
number of clients you are trying to service and should be expanded.
Alternatively, if the you know that the number of concurrently active
clients is less than the addresses you have available, you may want to
consider reducing the lease lifetime.  In this way, addresses allocated
to clients that are no longer active on the network will become available
available sooner.

% DHCPSRV_CFGMGR_ADD_IFACE adding listening interface %1
A debug message issued when new interface is being added to the collection of
interfaces on which server listens to DHCP messages.

% DHCPSRV_CFGMGR_ADD_SUBNET4 adding subnet %1
A debug message reported when the DHCP configuration manager is adding the
specified IPv4 subnet to its database.

% DHCPSRV_CFGMGR_ADD_SUBNET6 adding subnet %1
A debug message reported when the DHCP configuration manager is adding the
specified IPv6 subnet to its database.

% DHCPSRV_CFGMGR_ALL_IFACES_ACTIVE enabling listening on all interfaces
A debug message issued when server is being configured to listen on all
interfaces.

% DHCPSRV_CFGMGR_CFG_DHCP_DDNS Setting DHCP-DDNS configuration to: %1
A debug message issued when the server's DHCP-DDNS settings are changed.

% DHCPSRV_CFGMGR_CLEAR_ACTIVE_IFACES stop listening on all interfaces
A debug message issued when configuration manager clears the internal list
of active interfaces. This doesn't prevent the server from listening to
the DHCP traffic through open sockets, but will rather be used by Interface
Manager to select active interfaces when sockets are re-opened.

% DHCPSRV_CFGMGR_DELETE_SUBNET4 deleting all IPv4 subnets
A debug message noting that the DHCP configuration manager has deleted all IPv4
subnets in its database.

% DHCPSRV_CFGMGR_DELETE_SUBNET6 deleting all IPv6 subnets
A debug message noting that the DHCP configuration manager has deleted all IPv6
subnets in its database.

% DHCPSRV_CFGMGR_NO_SUBNET4 no suitable subnet is defined for address hint %1
This debug message is output when the DHCP configuration manager has received
a request for an IPv4 subnet for the specified address, but no such
subnet exists.

% DHCPSRV_CFGMGR_NO_SUBNET6 no suitable subnet is defined for address hint %1
This debug message is output when the DHCP configuration manager has received
a request for an IPv6 subnet for the specified address, but no such
subnet exists.

% DHCPSRV_CFGMGR_ONLY_SUBNET4 retrieved subnet %1 for address hint %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv4 subnet when given the address hint specified
because it is the only subnet defined.

% DHCPSRV_CFGMGR_ONLY_SUBNET6 retrieved subnet %1 for address hint %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv6 subnet when given the address hint specified
because it is the only subnet defined.

% DHCPSRV_CFGMGR_SUBNET4 retrieved subnet %1 for address hint %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv4 subnet when given the address hint specified
as the address is within the subnet.

% DHCPSRV_CFGMGR_SUBNET4_RELAY selected subnet %1, because of matching relay addr %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv4 subnet, because detected relay agent address
matches value specified for this subnet.

% DHCPSRV_CFGMGR_SUBNET6 retrieved subnet %1 for address hint %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv6 subnet when given the address hint specified
as the address is within the subnet.

% DHCPSRV_CFGMGR_SUBNET6_IFACE selected subnet %1 for packet received over interface %2
This is a debug message reporting that the DHCP configuration manager
has returned the specified IPv6 subnet for a packet received over
given interface.  This particular subnet was selected, because it
was specified as being directly reachable over given interface. (see
'interface' parameter in the subnet6 definition).

% DHCPSRV_CFGMGR_SUBNET6_IFACE_ID selected subnet %1 (interface-id match) for incoming packet
This is a debug message reporting that the DHCP configuration manager
has returned the specified IPv6 subnet for a received packet. This particular
subnet was selected, because value of interface-id option matched what was
configured in server's interface-id option for that selected subnet6.
(see 'interface-id' parameter in the subnet6 definition).

% DHCPSRV_CFGMGR_SUBNET6_RELAY selected subnet %1, because of matching relay addr %2
This is a debug message reporting that the DHCP configuration manager has
returned the specified IPv6 subnet, because detected relay agent address
matches value specified for this subnet.

% DHCPSRV_CLOSE_DB closing currently open %1 database
This is a debug message, issued when the DHCP server closes the currently
open lease database.  It is issued at program shutdown and whenever
the database access parameters are changed: in the latter case, the
server closes the currently open database, and opens a database using
the new parameters.

% DHCPSRV_DHCP_DDNS_ERROR_EXCEPTION error handler for DHCP_DDNS IO generated an expected exception: %1
This is an error message that occurs when an attempt to send a request to
kea-dhcp-ddns fails there registered error handler threw an uncaught exception.
This is a programmatic error which should not occur. By convention, the error
handler should not propagate exceptions. Please report this error.

% DHCPSRV_DHCP_DDNS_HANDLER_NULL error handler for DHCP_DDNS IO is not set.
This is an error message that occurs when an attempt to send a request to
kea-dhcp-ddns fails and there is no registered error handler.  This is a
programmatic error which should never occur and should be reported.

% DHCPSRV_DHCP_DDNS_NCR_REJECTED NameChangeRequest rejected by the sender: %1, ncr: %2
This is an error message indicating that NameChangeSender used to deliver DDNS
update requests to kea-dhcp-ddns rejected the request.  This most likely cause
is the sender's queue has reached maximum capacity.  This would imply that
requests are being generated faster than they can be delivered.

% DHCPSRV_DHCP_DDNS_NCR_SENT NameChangeRequest sent to kea-dhcp-ddns: %1
A debug message issued when a NameChangeRequest has been successfully sent to
kea-dhcp-ddns.

% DHCPSRV_DHCP_DDNS_SENDER_STARTED NameChangeRequest sender has been started: %1
A informational message issued when a communications with kea-dhcp-ddns has
been successfully started.

% DHCPSRV_DHCP_DDNS_SENDER_STOPPED NameChangeRequest sender has been stopped.
A informational message issued when a communications with kea-dhcp-ddns has
been stopped. This normally occurs during reconfiguration and as part of normal
shutdown. It may occur if kea-dhcp-ddns communications breakdown.

% DHCPSRV_DHCP_DDNS_SUSPEND_UPDATES DHCP_DDNS updates are being suspended.
This is a warning message indicating the DHCP_DDNS updates have been turned
off.  This should only occur if IO errors communicating with kea-dhcp-ddns
have been experienced.  Any such errors should have preceding entries in the
log with details.  No further attempts to communicate with kea-dhcp-ddns will
be made without intervention.

% DHCPSRV_HOOK_LEASE4_RENEW_SKIP DHCPv4 lease was not renewed because a callout set the skip flag.
This debug message is printed when a callout installed on lease4_renew
hook point set the skip flag. For this particular hook point, the setting
of the flag by a callout instructs the server to not renew a lease. The
server will use existing lease as it is, without extending its lifetime.

% DHCPSRV_HOOK_LEASE4_SELECT_SKIP Lease4 creation was skipped, because of callout skip flag.
This debug message is printed when a callout installed on lease4_select
hook point sets the skip flag. It means that the server was told that
no lease4 should be assigned. The server will not put that lease in its
database and the client will get a NAK packet.

% DHCPSRV_HOOK_LEASE6_SELECT_SKIP Lease6 (non-temporary) creation was skipped, because of callout skip flag.
This debug message is printed when a callout installed on lease6_select
hook point sets the skip flag. It means that the server was told that
no lease6 should be assigned. The server will not put that lease in its
database and the client will get a NoAddrsAvail for that IA_NA option.

% DHCPSRV_INVALID_ACCESS invalid database access string: %1
This is logged when an attempt has been made to parse a database access string
and the attempt ended in error.  The access string in question - which
should be of the form 'keyword=value keyword=value...' is included in
the message.

% DHCPSRV_MEMFILE_ADD_ADDR4 adding IPv4 lease with address %1
A debug message issued when the server is about to add an IPv4 lease
with the specified address to the memory file backend database.

% DHCPSRV_MEMFILE_ADD_ADDR6 adding IPv6 lease with address %1
A debug message issued when the server is about to add an IPv6 lease
with the specified address to the memory file backend database.

% DHCPSRV_MEMFILE_COMMIT committing to memory file database
The code has issued a commit call.  For the memory file database, this is
a no-op.

% DHCPSRV_MEMFILE_DB opening memory file lease database: %1
This informational message is logged when a DHCP server (either V4 or
V6) is about to open a memory file lease database.  The parameters of
the connection including database name and username needed to access it
(but not the password if any) are logged.

% DHCPSRV_MEMFILE_DELETE_ADDR deleting lease for address %1
A debug message issued when the server is attempting to delete a lease
for the specified address from the memory file database for the specified
address.

% DHCPSRV_MEMFILE_GET_ADDR4 obtaining IPv4 lease for address %1
A debug message issued when the server is attempting to obtain an IPv4
lease from the memory file database for the specified address.

% DHCPSRV_MEMFILE_GET_ADDR6 obtaining IPv6 lease for address %1 and lease type %2
A debug message issued when the server is attempting to obtain an IPv6
lease from the memory file database for the specified address.

% DHCPSRV_MEMFILE_GET_CLIENTID obtaining IPv4 leases for client ID %1
A debug message issued when the server is attempting to obtain a set of
IPv4 leases from the memory file database for a client with the specified
client identification.

% DHCPSRV_MEMFILE_GET_CLIENTID_HWADDR_SUBID obtaining IPv4 lease for client ID %1, hardware address %2 and subnet ID %3
A debug message issued when the server is attempting to obtain an IPv4
lease from the memory file database for a client with the specified
client ID, hardware address and subnet ID.

% DHCPSRV_MEMFILE_GET_HWADDR obtaining IPv4 leases for hardware address %1
A debug message issued when the server is attempting to obtain a set of
IPv4 leases from the memory file database for a client with the specified
hardware address.

% DHCPSRV_MEMFILE_GET_IAID_DUID obtaining IPv6 leases for IAID %1 and DUID %2 and lease type %3
A debug message issued when the server is attempting to obtain a set of
IPv6 lease from the memory file database for a client with the specified
IAID (Identity Association ID) and DUID (DHCP Unique Identifier).

% DHCPSRV_MEMFILE_GET_IAID_SUBID_DUID obtaining IPv6 leases for IAID %1, Subnet ID %2, DUID %3 and lease type %4
A debug message issued when the server is attempting to obtain an IPv6
lease from the memory file database for a client with the specified IAID
(Identity Association ID), Subnet ID and DUID (DHCP Unique Identifier).

% DHCPSRV_MEMFILE_GET_SUBID_CLIENTID obtaining IPv4 lease for subnet ID %1 and client ID %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the memory file database for a client with the specified
subnet ID and client ID.

% DHCPSRV_MEMFILE_GET_SUBID_HWADDR obtaining IPv4 lease for subnet ID %1 and hardware address %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the memory file database for a client with the specified
subnet ID and hardware address.

% DHCPSRV_MEMFILE_GET_VERSION obtaining schema version information
A debug message issued when the server is about to obtain schema version
information from the memory file database.

% DHCPSRV_MEMFILE_LEASES_RELOAD4 reloading leases from %1
An info message issued when server is about to start reading DHCPv4 leases
from the lease file. All leases currently held in the memory will be
replaced by those read from the file.

% DHCPSRV_MEMFILE_LEASES_RELOAD6 reloading leases from %1
An info message issued when server is about to start reading DHCPv6 leases
from the lease file. All leases currently held in the memory will be
replaced by those read from the file.

% DHCPSRV_MEMFILE_LEASE_LOAD4 loading lease %1
A debug message issued when DHCPv4 lease is being loaded from the file to
memory.

% DHCPSRV_MEMFILE_LEASE_LOAD6 loading lease %1
A debug message issued when DHCPv6 lease is being loaded from the file to
memory.

% DHCPSRV_MEMFILE_NO_STORAGE running in non-persistent mode, leases will be lost after restart
A warning message issued when writes of leases to disk have been disabled
in the configuration. This mode is useful for some kinds of performance
testing but should not be enabled in normal circumstances. Non-persistence
mode is enabled when 'persist4=no persist6=no' parameters are specified
in the database access string.

% DHCPSRV_MEMFILE_ROLLBACK rolling back memory file database
The code has issued a rollback call.  For the memory file database, this is
a no-op.

% DHCPSRV_MEMFILE_UPDATE_ADDR4 updating IPv4 lease for address %1
A debug message issued when the server is attempting to update IPv4
lease from the memory file database for the specified address.

% DHCPSRV_MEMFILE_UPDATE_ADDR6 updating IPv6 lease for address %1
A debug message issued when the server is attempting to update IPv6
lease from the memory file database for the specified address.

% DHCPSRV_MYSQL_ADD_ADDR4 adding IPv4 lease with address %1
A debug message issued when the server is about to add an IPv4 lease
with the specified address to the MySQL backend database.

% DHCPSRV_MYSQL_ADD_ADDR6 adding IPv6 lease with address %1, lease type %2
A debug message issued when the server is about to add an IPv6 lease
with the specified address to the MySQL backend database.

% DHCPSRV_MYSQL_COMMIT committing to MySQL database
The code has issued a commit call.  All outstanding transactions will be
committed to the database.  Note that depending on the MySQL settings,
the committal may not include a write to disk.

% DHCPSRV_MYSQL_DB opening MySQL lease database: %1
This informational message is logged when a DHCP server (either V4 or
V6) is about to open a MySQL lease database.  The parameters of the
connection including database name and username needed to access it
(but not the password if any) are logged.

% DHCPSRV_MYSQL_DELETE_ADDR deleting lease for address %1
A debug message issued when the server is attempting to delete a lease for
the specified address from the MySQL database for the specified address.

% DHCPSRV_MYSQL_GET_ADDR4 obtaining IPv4 lease for address %1
A debug message issued when the server is attempting to obtain an IPv4
lease from the MySQL database for the specified address.

% DHCPSRV_MYSQL_GET_ADDR6 obtaining IPv6 lease for address %1, lease type %2
A debug message issued when the server is attempting to obtain an IPv6
lease from the MySQL database for the specified address.

% DHCPSRV_MYSQL_GET_CLIENTID obtaining IPv4 leases for client ID %1
A debug message issued when the server is attempting to obtain a set
of IPv4 leases from the MySQL database for a client with the specified
client identification.

% DHCPSRV_MYSQL_GET_HWADDR obtaining IPv4 leases for hardware address %1
A debug message issued when the server is attempting to obtain a set
of IPv4 leases from the MySQL database for a client with the specified
hardware address.

% DHCPSRV_MYSQL_GET_IAID_DUID obtaining IPv6 leases for IAID %1, DUID %2, lease type %3
A debug message issued when the server is attempting to obtain a set of
IPv6 lease from the MySQL database for a client with the specified IAID
(Identity Association ID) and DUID (DHCP Unique Identifier).

% DHCPSRV_MYSQL_GET_IAID_SUBID_DUID obtaining IPv6 leases for IAID %1, Subnet ID %2, DUID %3, lease type %4
A debug message issued when the server is attempting to obtain an IPv6
lease from the MySQL database for a client with the specified IAID
(Identity Association ID), Subnet ID and DUID (DHCP Unique Identifier).

% DHCPSRV_MYSQL_GET_SUBID_CLIENTID obtaining IPv4 lease for subnet ID %1 and client ID %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the MySQL database for a client with the specified subnet ID
and client ID.

% DHCPSRV_MYSQL_GET_SUBID_HWADDR obtaining IPv4 lease for subnet ID %1 and hardware address %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the MySQL database for a client with the specified subnet ID
and hardware address.

% DHCPSRV_MYSQL_GET_VERSION obtaining schema version information
A debug message issued when the server is about to obtain schema version
information from the MySQL database.

% DHCPSRV_MYSQL_ROLLBACK rolling back MySQL database
The code has issued a rollback call.  All outstanding transaction will
be rolled back and not committed to the database.

% DHCPSRV_MYSQL_UPDATE_ADDR4 updating IPv4 lease for address %1
A debug message issued when the server is attempting to update IPv4
lease from the MySQL database for the specified address.

% DHCPSRV_MYSQL_UPDATE_ADDR6 updating IPv6 lease for address %1, lease type %2
A debug message issued when the server is attempting to update IPv6
lease from the MySQL database for the specified address.

% DHCPSRV_NOTYPE_DB no 'type' keyword to determine database backend: %1
This is an error message, logged when an attempt has been made to access
a database backend, but where no 'type' keyword has been included in
the access string.  The access string (less any passwords) is included
in the message.

% DHCPSRV_PGSQL_ADD_ADDR4 adding IPv4 lease with address %1
A debug message issued when the server is about to add an IPv4 lease
with the specified address to the PostgreSQL backend database.

% DHCPSRV_PGSQL_ADD_ADDR6 adding IPv6 lease with address %1
A debug message issued when the server is about to add an IPv6 lease
with the specified address to the PostgreSQL backend database.

% DHCPSRV_PGSQL_COMMIT committing to MySQL database
The code has issued a commit call.  All outstanding transactions will be
committed to the database.  Note that depending on the PostgreSQL settings,
the committal may not include a write to disk.

% DHCPSRV_PGSQL_DB opening PostgreSQL lease database: %1
This informational message is logged when a DHCP server (either V4 or
V6) is about to open a PostgreSQL lease database.  The parameters of the
connection including database name and username needed to access it
(but not the password if any) are logged.

% DHCPSRV_PGSQL_DEALLOC_ERROR An error occurred deallocating SQL statements while closing the PostgreSQL lease database: %1
This is an error message issued when a DHCP server (either V4 or V6) experienced
and error freeing database SQL resources as part of closing its connection to
the Postgresql database.  The connection is closed as part of normal server
shutdown.  This error is most likely a programmatic issue that is highly
unlikely to occur or negatively impact server operation.

% DHCPSRV_PGSQL_DELETE_ADDR deleting lease for address %1
A debug message issued when the server is attempting to delete a lease for
the specified address from the PostgreSQL database for the specified address.

% DHCPSRV_PGSQL_GET_ADDR4 obtaining IPv4 lease for address %1
A debug message issued when the server is attempting to obtain an IPv4
lease from the PostgreSQL database for the specified address.

% DHCPSRV_PGSQL_GET_ADDR6 obtaining IPv6 lease for address %1 (lease type %2)
A debug message issued when the server is attempting to obtain an IPv6
lease from the PostgreSQL database for the specified address.

% DHCPSRV_PGSQL_GET_CLIENTID obtaining IPv4 leases for client ID %1
A debug message issued when the server is attempting to obtain a set
of IPv4 leases from the PostgreSQL database for a client with the specified
client identification.

% DHCPSRV_PGSQL_GET_HWADDR obtaining IPv4 leases for hardware address %1
A debug message issued when the server is attempting to obtain a set
of IPv4 leases from the PostgreSQL database for a client with the specified
hardware address.

% DHCPSRV_PGSQL_GET_IAID_DUID obtaining IPv4 leases for IAID %1 and DUID %2, lease type %3
A debug message issued when the server is attempting to obtain a set of
IPv6 lease from the PostgreSQL database for a client with the specified IAID
(Identity Association ID) and DUID (DHCP Unique Identifier).

% DHCPSRV_PGSQL_GET_IAID_SUBID_DUID obtaining IPv4 leases for IAID %1, Subnet ID %2, DUID %3, and lease type %4
A debug message issued when the server is attempting to obtain an IPv6
lease from the PostgreSQL database for a client with the specified IAID
(Identity Association ID), Subnet ID and DUID (DHCP Unique Identifier).

% DHCPSRV_PGSQL_GET_SUBID_CLIENTID obtaining IPv4 lease for subnet ID %1 and client ID %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the PostgreSQL database for a client with the specified subnet ID
and client ID.

% DHCPSRV_PGSQL_GET_SUBID_HWADDR obtaining IPv4 lease for subnet ID %1 and hardware address %2
A debug message issued when the server is attempting to obtain an IPv4
lease from the PostgreSQL database for a client with the specified subnet ID
and hardware address.

% DHCPSRV_PGSQL_GET_VERSION obtaining schema version information
A debug message issued when the server is about to obtain schema version
information from the PostgreSQL database.

% DHCPSRV_PGSQL_ROLLBACK rolling back PostgreSQL database
The code has issued a rollback call.  All outstanding transaction will
be rolled back and not committed to the database.

% DHCPSRV_PGSQL_UPDATE_ADDR4 updating IPv4 lease for address %1
A debug message issued when the server is attempting to update IPv4
lease from the PostgreSQL database for the specified address.

% DHCPSRV_PGSQL_UPDATE_ADDR6 updating IPv6 lease for address %1
A debug message issued when the server is attempting to update IPv6
lease from the PostgreSQL database for the specified address.

% DHCPSRV_UNEXPECTED_NAME database access parameters passed through '%1', expected 'lease-database'
The parameters for access the lease database were passed to the server through
the named configuration parameter, but the code was expecting them to be
passed via the parameter named "lease-database".  If the database opens
successfully, there is no impact on server operation.  However, as this does
indicate an error in the source code, please submit a bug report.

% DHCPSRV_UNKNOWN_DB unknown database type: %1
The database access string specified a database type (given in the
message) that is unknown to the software.  This is a configuration error.
