# Copyright (C) 2012-2025 Internet Systems Consortium, Inc. ("ISC")
#
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

$NAMESPACE isc::dhcp

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

% DHCPSRV_CFGMGR_ADD_SUBNET4 adding subnet %1
Logged at debug log level 40.
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
Logged at debug log level 40.
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
Logged at debug log level 40.
A debug message issued when the server is being configured to listen on all
interfaces.

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

% DHCPSRV_CFGMGR_CONFIG4_MERGED Configuration backend data has been merged.
This is an informational message emitted when the DHCPv4 server has
successfully merged configuration data retrieved from its configuration
backends into the current configuration.

% DHCPSRV_CFGMGR_CONFIG6_MERGED Configuration backend data has been merged.
This is an informational message emitted when the DHCPv6 server has
successfully merged configuration data retrieved from its configuration
backends into the current configuration.

% DHCPSRV_CFGMGR_CONFIGURE_SERVERID server configuration includes specification of a server identifier
This warning message is issued when the server specified configuration of
a server identifier. If this new configuration overrides an existing
server identifier, this will affect existing bindings of the clients.
Clients will use old server identifier when they renew their bindings.
The server will not respond to those renews, and the clients will
eventually transition to rebinding state. The server should reassign
existing bindings and the clients will subsequently use new server
identifier. It is recommended to not modify the server identifier, unless
there is a good reason for it, to avoid increased number of renewals and
a need for rebinding (increase of multicast traffic, which may be received
by multiple servers).

% DHCPSRV_CFGMGR_DEL_SUBNET4 IPv4 subnet %1 removed
Logged at debug log level 40.
This debug message is issued when a subnet is successfully removed from the
server configuration. The argument identifies the removed subnet.

% DHCPSRV_CFGMGR_DEL_SUBNET6 IPv6 subnet %1 removed
Logged at debug log level 40.
This debug message is issued when a subnet is successfully removed from the
server configuration. The argument identifies the removed subnet.

% DHCPSRV_CFGMGR_FLQ_POPULATE_FREE_ADDRESS_LEASES populating free address leases for the FLQ allocator in subnet %1; it can take a while!
This informational message is issued when the server begins building a queue
of free address leases for the given subnet. It can take a considerable amount
of time, depending on the size of the address pools.

% DHCPSRV_CFGMGR_FLQ_POPULATE_FREE_ADDRESS_LEASES_DONE populated %1 free address leases for the FLQ allocator in subnet %2 in %3
This informational message is issued when the server ends building a queue
of free address leases for a given subnet. The first argument logs the
number of free leases, the second argument logs the subnet, and the third
argument logs a duration.

% DHCPSRV_CFGMGR_FLQ_POPULATE_FREE_PREFIX_LEASES populating free prefix leases for the FLQ allocator in subnet %1; it can take a while!
This informational message is issued when the server begins building a queue
of free leases for the given subnet. It can take a considerable amount of
time, depending on the size of the delegated prefix pools.

% DHCPSRV_CFGMGR_FLQ_POPULATE_FREE_PREFIX_LEASES_DONE populated %1 free prefix leases for the FLQ allocator in subnet %2 completed in %3
This informational message is issued when the server ends building a queue
of free prefix leases for a given subnet. The first argument logs the
number of free leases, the second argument logs the subnet, and the third
argument logs a duration.

% DHCPSRV_CFGMGR_IPV4_RESERVATIONS_NON_UNIQUE_IGNORED ignoring "ip-reservations-unique" setting because at least one of the host database backends does not support non-unique IP reservations in a subnet
This warning message is issued when the server failed to use the new setting
of the ip-reservations-unique global parameter configured via the configuration
backend. Some host database backends used apparently do not support specifying
several reservations for the same IP address in a subnet. The administrator
should either stop using the backend that does not support this setting or set
the value of the ip-reservations-unique to true to resolve the configuration
issue.

% DHCPSRV_CFGMGR_IPV6_RESERVATIONS_NON_UNIQUE_IGNORED ignoring "ip-reservations-unique" setting because at least one of the host database backends does not support non unique IP reservations in a subnet
This warning message is issued when the server failed to use the new setting
of the ip-reservations-unique global parameter configured via the configuration
backend. Some host database backends used apparently do not support specifying
several reservations for the same IP address or delegated prefix in a subnet.
The administrator should either stop using the backend that does not support
this setting or set the value of the ip-reservations-unique to true to resolve
the configuration issue.

% DHCPSRV_CFGMGR_IP_RESERVATIONS_UNIQUE_DUPLICATES_DETECTED the "ip-reservations-unique" flag is set to true and multiple reservations for the IP address %1 in subnet %2 are not allowed causing error: %3
This warning message is issued when the DHCP server is configured to not allow
multiple reservations for the same IP address. However, the host database
backend contains multiple reservations for the IP address logged as the first
argument, in the subnet logged as second argument, causing problems with lease
allocation logged as third argument.

% DHCPSRV_CFGMGR_IP_RESERVATIONS_UNIQUE_DUPLICATES_POSSIBLE setting "ip-reservations-unique" from false to true poses a risk that some host backends may still contain multiple reservations for the same IP address
This warning message is issued when the DHCP server is configured to not allow
multiple reservations for the same IP address. However, the host database
backends may still contain multiple reservations for the same IP addresses
causing problems with lease allocation for certain addresses. Please ensure
that all such duplicates are removed.

% DHCPSRV_CFGMGR_NEW_SUBNET4 a new subnet has been added to configuration: %1
This is an informational message reporting that the configuration has
been extended to include the specified IPv4 subnet.

% DHCPSRV_CFGMGR_NEW_SUBNET6 a new subnet has been added to configuration: %1
This is an informational message reporting that the configuration has
been extended to include the specified subnet.

% DHCPSRV_CFGMGR_OPTION_DUPLICATE multiple options with the code: %1 added to the subnet: %2
This warning message is issued on an attempt to configure multiple options with the
same option code for the particular subnet. Adding multiple options is uncommon
for DHCPv6, but it is not prohibited.

% DHCPSRV_CFGMGR_RENEW_GTR_REBIND in %1, the value of renew-timer %2 is greater than the value of rebind-timer %3, ignoring renew-timer
A warning message that indicates the configured renew-timer is greater
than the configured rebind-timer. The server will ignore the renew
timer value and send the rebind timer value only. This is considered
a non-fatal configuration error.

% DHCPSRV_CFGMGR_SOCKET_RAW_UNSUPPORTED use of raw sockets is unsupported on this OS, UDP sockets will be used
This warning message is logged when the user specified that the
DHCPv4 server should use the raw sockets to receive the DHCP
messages and respond to the clients, but the use of raw sockets
is not supported on the particular environment. The raw sockets
are useful when the server must respond to the directly connected
clients which don't have an address yet. If the raw sockets are
not supported by Kea on the particular platform, Kea will fall
back to use of the IP/UDP sockets. The responses to
the directly connected clients will be broadcast. The responses
to relayed clients will be unicast as usual.

% DHCPSRV_CFGMGR_SOCKET_TYPE_DEFAULT "dhcp-socket-type" not specified , using default socket type %1
This informational message is logged when the administrator hasn't
specified the "dhcp-socket-type" parameter in configuration for interfaces.
In such case, the default socket type will be used.

% DHCPSRV_CFGMGR_SOCKET_TYPE_SELECT using socket type %1
This informational message is logged when the DHCPv4 server selects the
socket type to be used for all sockets that will be opened on the
interfaces. Typically, the socket type is specified by the server
administrator. If the socket type hasn't been specified, the raw
socket will be selected. If the raw socket has been selected but
Kea doesn't support the use of raw sockets on the particular
OS, it will use an UDP socket instead.

% DHCPSRV_CFGMGR_SUBNET4 retrieved subnet %1 for address hint %2
Logged at debug log level 40.
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_ADDR selected subnet %1 for packet received by matching address %2
Logged at debug log level 40.
This is a debug message reporting that the DHCP configuration manager
has returned the specified IPv4 subnet for a received packet. This particular
subnet was selected, because an IPv4 address was matched which belonged to that
subnet.

% DHCPSRV_CFGMGR_SUBNET4_IFACE selected subnet %1 for packet received over interface %2
Logged at debug log level 40.
This is a debug message reporting that the DHCP configuration manager
has returned the specified IPv4 subnet for a packet received over
the given interface. This particular subnet was selected, because it
was specified as being directly reachable over the given interface. (see
'interface' parameter in the subnet4 definition).

% DHCPSRV_CFGMGR_SUBNET4_RELAY selected subnet %1, because of matching relay addr %2
Logged at debug log level 40.
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
Logged at debug log level 40.
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
Logged at debug log level 40.
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
Logged at debug log level 40.
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 the 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
Logged at debug log level 40.
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_CFGMGR_UNICAST_LINK_LOCAL specified link local address %1 for unicast traffic on interface %2
This warning message is logged when user specified a link-local address to
receive unicast traffic. The warning message is issued because it is an
uncommon use.

% DHCPSRV_CFGMGR_UPDATE_SUBNET4 updating subnet %1 (result %2)
Logged at debug log level 40.
A debug message reported when the DHCP configuration manager is updating the
specified IPv4 subnet in its current configuration. Subnet ID and result
(expected to be true) are displayed.

% DHCPSRV_CFGMGR_UPDATE_SUBNET6 updating subnet %1 (result %2)
Logged at debug log level 40.
A debug message reported when the DHCP configuration manager is replacing the
specified IPv6 subnet in its current configuration. Subnet ID and result
(expected to be true) are displayed.

% DHCPSRV_CFGMGR_USE_ADDRESS listening on address %1, on interface %2
A message issued when the server is configured to listen on the explicitly specified
IP address on the given interface.

% DHCPSRV_CFGMGR_USE_ALLOCATOR using the %1 allocator for %2 leases in subnet %3
A message issued when the configuration manager starts using a given allocator
for a subnet.

% DHCPSRV_CFGMGR_USE_UNICAST listening on unicast address %1, on interface %2
An info message issued when configuring the DHCP server to listen on the unicast
address on the specific interface.

% DHCPSRV_CLASS_WITH_ADDITIONAL_AND_LIFETIMES class: %1 has 'only-in-additional-list' true while specifying one or more lease life time values. Life time values will be ignored.
This warning is emitted whenever a class is configured with
'only-in-addition-list' true as well as specifying one or
more lease life time parameters (e.g. 'valid-lifetime',
'preferred-lifetime', or 'offer-lifetime'). Additional list classes
are evaluated after lease assignment, thus parameters that would otherwise
impact lease life times will have no affect.

% DHCPSRV_CLIENT_CLASS_DEPRECATED The parameter 'client-class' is deprecated. Use 'client-classes' list parameter instead
This warning message is emitted when configuration parsing detects
the use of the deprecated 'client-class' parameter. It has
been replaced by 'client-classes'.  Users should migrate
to the new list parameter.

% DHCPSRV_CLOSE_DB closing currently open %1 database
Logged at debug log level 40.
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_DDNS_TTL_TOO_LARGE %1 of lease life time %2 is %3, using maximum of %4 instead.
Logged at debug log level 55.
A debug message issued when the DDNS TTL value calculated using the
ddns-ttl-percent if specified or (0.33 if not) is larger than the
the specified value of ddns-ttl-max. Kea will ignore the value and
use the specified maximum instead. The message details include
the percentage, the lease life time, the calculated TTL, and the value
actually used.

% DHCPSRV_DDNS_TTL_TOO_SMALL %1 of lease life time %2 is %3, using minimum of %4 instead.
Logged at debug log level 55.
A debug message issued when the DDNS TTL value calculated using the
ddns-ttl-percent if specified or (0.33 if not) is too small.  Kea will
ignore the value and use the minimum (ddns-ttl-min if specified or 600
seconds if not). The message details include the percentage, the lease
life time, the calculated TTL, and the value actually used.

% DHCPSRV_DHCP4O6_RECEIVED_BAD_PACKET received bad DHCPv4o6 packet: %1
A bad DHCPv4o6 packet was received.

% 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
Logged at debug log level 50.
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
An informational message issued when a communication with kea-dhcp-ddns has
been successfully started.

% DHCPSRV_DHCP_DDNS_SENDER_STOPPED NameChangeRequest sender has been stopped.
An informational message issued when a communication 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 break down.

% 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_EVAL_ERROR %1: Expression '%2' evaluated to %3
This error message indicates that a problem was encountered while
evaluating an expression of a client class.
A description of the problem is printed.

% DHCPSRV_EVAL_RESULT %1: Expression '%2' evaluated to %3
Logged at debug log level 50.
This debug message indicates that the expression of a client class has been
successfully evaluated. The client class name and the result value of the
evaluation are printed.

% DHCPSRV_FORENSIC_BACKENDS_REGISTERED the following forensic backend types are available: %1
This informational message lists all possible forensic backends that could
be used in forensic logging.

% DHCPSRV_FORENSIC_BACKEND_DEREGISTER deregistered forensic backend type: %1
Logged at debug log level 40.
This debug message is issued when a backend factory was deregistered.
It is no longer possible to use forensic backend of this type.

% DHCPSRV_FORENSIC_BACKEND_REGISTER registered forensic backend type: %1
Logged at debug log level 40.
This debug message is issued when a backend factory was successfully
registered. It is now possible to use forensic backend of this type.

% DHCPSRV_HOOK_LEASE4_RECOVER_SKIP DHCPv4 lease %1 was not recovered from the declined state because a callout set the skip status.
Logged at debug log level 40.
This debug message is printed when a callout installed on lease4_recover
hook point set the next step status to SKIP. For this particular hook point, this
indicates that the server should not recover the lease from declined state.
The server will leave the lease as it is, in the declined state. The
server will attempt to recover it the next time decline recovery procedure
takes place.

% DHCPSRV_HOOK_LEASE4_RENEW_SKIP DHCPv4 lease was not renewed because a callout set the skip flag.
Logged at debug log level 40.
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.
Logged at debug log level 40.
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_EXTEND_SKIP DHCPv6 lease lifetime was not extended because a callout set the skip flag for message %1
Logged at debug log level 40.
This debug message is printed when a callout installed on lease6_renew
or the lease6_rebind hook point set the skip flag. For this particular hook
point, the setting of the flag by a callout instructs the server to not
extend the lifetime for a lease. If the client requested renewal of multiple
leases (by sending multiple IA options), the server will skip the renewal
of the one in question and will proceed with other renewals as usual.

% DHCPSRV_HOOK_LEASE6_RECOVER_SKIP DHCPv6 lease %1 was not recovered from declined state because a callout set the skip status.
Logged at debug log level 40.
This debug message is printed when a callout installed on lease6_recover
hook point set the next step status to SKIP. For this particular hook point, this
indicates that the server should not recover the lease from declined state.
The server will leave the lease as it is, in the declined state. The
server will attempt to recover it the next time decline recovery procedure
takes place.

% DHCPSRV_HOOK_LEASE6_SELECT_SKIP Lease6 (non-temporary) creation was skipped, because of callout skip flag.
Logged at debug log level 40.
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_HOST_MGR_DB_OPEN_CONNECTION_WITH_RETRY_FAILED Failed to connect to database: %1 with error: %2
This is an informational message issued when the server failed to connect to
the host database. The operation started a retry to connect procedure.
The database access string with password redacted is logged, along with the
error and details for the reconnect procedure.

% DHCPSRV_LEASE4_EXTENDED_INFO_SANITY_FAIL extended info for lease %1 failed checks (%2)
This error message is printed when a lease extended info failed to
pass sanity checks. The detail of the found problem was displayed and
the extended info deleted from the lease user context.

% DHCPSRV_LEASE4_EXTENDED_INFO_UPGRADED extended info for lease %1 was upgraded
Logged at debug log level 40.
This debug message is printed when a lease extended info was upgraded.

% DHCPSRV_LEASE6_EXTENDED_INFO_SANITY_FAIL extended info for lease %1 failed checks (%2)
This error message is printed when a lease extended info failed to
pass sanity checks. The detail of the found problem was displayed and
the extended info deleted from the lease user context.

% DHCPSRV_LEASE6_EXTENDED_INFO_UPGRADED extended info for lease %1 was upgraded
Logged at debug log level 40.
This debug message is printed when a lease extended info was upgraded.

% DHCPSRV_LEASE_MGR_BACKENDS_REGISTERED the following lease backend types are available: %1
This informational message lists all possible lease backends that could
be used in lease-database.

% DHCPSRV_LEASE_MGR_BACKEND_DEREGISTER deregistered lease backend type: %1
Logged at debug log level 40.
This debug message is issued when a backend factory was deregistered.
It is no longer possible to use lease backend of this type.

% DHCPSRV_LEASE_MGR_BACKEND_REGISTER registered lease backend type: %1
Logged at debug log level 40.
This debug message is issued when a backend factory was successfully
registered. It is now possible to use lease backend of this type.

% DHCPSRV_LEASE_MGR_CALLBACK_EXCEPTION exception occurred in a lease manager callback for callback type %1, subnet id %2, and lease %3: %4
This warning message is printed when one of the callback functions registered
in the lease manager causes an error. The callback functions can serve
different purposes and they likely log the detailed error messages. This
error message possibly indicates an unhandled error. The first argument
indicates a callback type. The second argument prints the subnet id.
The third argument prints the lease for which the error has occurred.
The last argument prints the error text.

% DHCPSRV_LEASE_MGR_CALLBACK_UNKNOWN_EXCEPTION unknown exception occurred in a lease manager callback for callback type %1, subnet id %2, and lease %3
This warning message is printed when one of the callback functions registered
in the lease manager causes an unknown error. The callback functions can serve
different purposes and they likely log the detailed error messages. This
error message possibly indicates an unhandled error. The first argument
indicates a callback type. The second argument prints the subnet id.
The third argument prints the lease for which the error has occurred.
This log message variant contains no error text because it is triggered
by an unknown exception.

% DHCPSRV_LEASE_MGR_DB_OPEN_CONNECTION_WITH_RETRY_FAILED Failed to connect to database: %1 with error: %2
This is an informational message issued when the server failed to connect to
the lease database. The operation started a retry to connect procedure.
The database access string with password redacted is logged, along with the
error and details for the reconnect procedure.

% DHCPSRV_LEASE_SANITY_FAIL The lease %1 with subnet-id %2 failed subnet-id checks (%3).
This warning message is printed when the lease being loaded does not match the
configuration. Due to lease-checks value, the lease will be loaded, but
it will most likely be unused by Kea, as there is no subnet that matches
the IP address associated with the lease.

% DHCPSRV_LEASE_SANITY_FAIL_DISCARD The lease %1 with subnet-id %2 failed subnet-id checks (%3) and was dropped.
This warning message is printed when a lease was loaded, but Kea was told
(by setting lease-checks parameter) to discard leases with inconsistent
data. The lease was discarded, because either there is no subnet configured
with matching subnet-id or the address of the lease does not belong to the
subnet.

% DHCPSRV_LEASE_SANITY_FIXED The lease %1 with subnet-id %2 failed subnet-id checks, but was corrected to subnet-id %3.
This informational message is printed when a lease was loaded, but had
incorrect subnet-id value. The lease-checks parameter was set to a value
that told Kea to try to correct the problem. There is a matching subnet,
so Kea updated subnet-id and loaded the lease successfully.

% DHCPSRV_MEMFILE_ADD_ADDR4 adding IPv4 lease with address %1
Logged at debug log level 50.
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
Logged at debug log level 50.
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_BEGIN_BUILD_EXTENDED_INFO_TABLES6 building extended info tables with %1 sanity check level, tables %2
Logged at debug log level 40.
A debug message issued when the server is building extended info tables.
The extended info sanity check level and the fact tables are enabled
or disabled are displayed.

% DHCPSRV_MEMFILE_BEGIN_EXTRACT_EXTENDED_INFO4 extract extended info with %1 sanity check level%2
Logged at debug log level 40.
A debug message issued when the server is extracting extended info.
The extended info sanity check level and update in file when requested
are displayed.

% DHCPSRV_MEMFILE_BUILD_EXTENDED_INFO_TABLES6 building extended info tables saw %1 leases, extended info sanity checks modified %2 leases and %3 leases were entered into tables
Extended info tables build was finished. Some statistics are displayed, the
updated in database is returned to the command interface.

% DHCPSRV_MEMFILE_BUILD_EXTENDED_INFO_TABLES6_ERROR building extended info tables got an exception on the lease for %1: %2
An error message issued when the server is building extended info tables and
receives an exception processing a lease.

% DHCPSRV_MEMFILE_COMMIT committing to memory file database
Logged at debug log level 50.
The code has issued a commit call. For the memory file database this is
a no-op.

% DHCPSRV_MEMFILE_CONVERTING_LEASE_FILES running LFC now to convert lease files to the current schema: %1.%2
A warning message issued when the server has detected lease files that need
to be either upgraded or downgraded to match the server's schema, and that
the server is automatically running the LFC process to perform the conversion.
This should only occur the first time the server is launched following a Kea
installation upgrade (or downgrade).

% 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_ADDR4 deleting lease for address %1
Logged at debug log level 50.
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_DELETE_ADDR6 deleting lease for address %1
Logged at debug log level 50.
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_DELETE_EXPIRED_RECLAIMED4 deleting reclaimed IPv4 leases that expired more than %1 seconds ago
Logged at debug log level 50.
A debug message issued when the server is removing reclaimed DHCPv4
leases which have expired longer than a specified period of time.
The argument is the amount of time Kea waits after a reclaimed
lease expires before considering its removal.

% DHCPSRV_MEMFILE_DELETE_EXPIRED_RECLAIMED6 deleting reclaimed IPv6 leases that expired more than %1 seconds ago
Logged at debug log level 50.
A debug message issued when the server is removing reclaimed DHCPv6
leases which have expired longer than a specified period of time.
The argument is the amount of time Kea waits after a reclaimed
lease expires before considering its removal.

% DHCPSRV_MEMFILE_DELETE_EXPIRED_RECLAIMED_START starting deletion of %1 expired-reclaimed leases
Logged at debug log level 50.
A debug message issued when the server has found expired-reclaimed
leases to be removed. The number of leases to be removed is logged
in the message.

% DHCPSRV_MEMFILE_EXTRACT_EXTENDED_INFO4 extracting extended info saw %1 leases, extended info sanity checks modified %2 / updated %3 leases and %4 leases have relay or remote id
Logged at debug log level 40.
Extended info extraction was finished. Some statistics are displayed, the
updated in database is returned to the command interface.

% DHCPSRV_MEMFILE_EXTRACT_EXTENDED_INFO4_ERROR extracting extended info got an exception on the lease for %1: %2
Logged at debug log level 40.
A debug message issued when the server is extracting extended info and
receives an exception processing a lease.

% DHCPSRV_MEMFILE_FAILED_TO_OPEN Could not open lease file: %1
This error is issued when the lease file could not be opened. The
argument contains the details. The most likely cause is that the `name`
parameter for memfile back end contains a path other than the supported
path. The argument will contain the details. The path component may
simply be omitted. To override the default supported path, set the
environment variable KEA_DHCP_DATA_DIR prior to starting the server.

% DHCPSRV_MEMFILE_GET4 obtaining all IPv4 leases
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain all IPv4
leases from the memory file database.

% DHCPSRV_MEMFILE_GET6 obtaining all IPv6 leases
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain all IPv6
leases from the memory file database.

% DHCPSRV_MEMFILE_GET6_DUID obtaining IPv6 leases for DUID %1
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain IPv6
leases from the memory file database for the DUID.

% DHCPSRV_MEMFILE_GET_ADDR4 obtaining IPv4 lease for address %1
Logged at debug log level 50.
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
Logged at debug log level 50.
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
Logged at debug log level 50.
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_EXPIRED4 obtaining maximum %1 of expired IPv4 leases
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain expired
IPv4 leases to reclaim them. The maximum number of leases to be retrieved
is logged in the message.

% DHCPSRV_MEMFILE_GET_EXPIRED6 obtaining maximum %1 of expired IPv6 leases
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain expired
IPv6 leases to reclaim them. The maximum number of leases to be retrieved
is logged in the message.

% DHCPSRV_MEMFILE_GET_HOSTNAME4 obtaining IPv4 leases for hostname %1
Logged at debug log level 50.
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
hostname.

% DHCPSRV_MEMFILE_GET_HOSTNAME6 obtaining IPv6 leases for hostname %1
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a set of
IPv6 leases from the memory file database for a client with the specified
hostname.

% DHCPSRV_MEMFILE_GET_HWADDR4 obtaining IPv4 leases for hardware address %1
Logged at debug log level 50.
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_HWADDR6 obtaining IPv6 leases for hardware address %1
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a set of
IPv6 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
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a set of IPv6
leases 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
Logged at debug log level 50.
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_PAGE4 obtaining at most %1 IPv4 leases starting from address %2
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page
of leases beginning with the specified address.

% DHCPSRV_MEMFILE_GET_PAGE6 obtaining at most %1 IPv6 leases starting from address %2
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page
of leases beginning with the specified address.

% DHCPSRV_MEMFILE_GET_RELAYID4 obtaining at most %1 IPv4 leases starting from address %2 with relay id %3 and cltt between %4 and %5
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page of
IPv4 leases beginning with the specified address with a relay id and client
transaction time between start and end dates.

% DHCPSRV_MEMFILE_GET_RELAYID6 obtaining at most %1 IPv6 leases starting from address %2 with relay id %3
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page of
IPv6 leases beginning with the specified address with a relay id.

% DHCPSRV_MEMFILE_GET_REMOTEID4 obtaining at most %1 IPv4 leases starting from address %2 with remote id %3 and cltt between %4 and %5
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page of
IPv4 leases beginning with the specified address with a remote id and
client transaction time between start and end dates.

% DHCPSRV_MEMFILE_GET_REMOTEID6 obtaining at most %1 IPv6 leases starting from address %2 with remote id %3
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page of
IPv6 leases beginning with the specified address with a remote id.

% DHCPSRV_MEMFILE_GET_SUBID4 obtaining IPv4 leases for subnet ID %1
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain all IPv4
leases for a given subnet identifier from the memory file database.

% DHCPSRV_MEMFILE_GET_SUBID6 obtaining IPv6 leases for subnet ID %1
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain all IPv6
leases for a given subnet identifier from the memory file database.

% DHCPSRV_MEMFILE_GET_SUBID_CLIENTID obtaining IPv4 lease for subnet ID %1 and client ID %2
Logged at debug log level 50.
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
Logged at debug log level 50.
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_SUBID_PAGE6 obtaining at most %1 IPv6 leases starting from address %2 for subnet ID %3
Logged at debug log level 50.
A debug message issued when the server is attempting to obtain a page of
IPv6 leases from the memory file database beginning with the specified
address for a given subnet identifier.

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

% DHCPSRV_MEMFILE_LEASE_LOAD loading lease %1
Logged at debug log level 55.
A debug message issued when DHCP lease is being loaded from the file to memory.

% DHCPSRV_MEMFILE_LEASE_LOAD_ROW_ERROR discarding row %1, error: %2
An error message issued if the DHCP lease being loaded from the given row of
the lease file fails. The log message should contain the specific reason the
row was discarded. The server continues loading the remaining data.
This may indicate a corrupt lease file.

% DHCPSRV_MEMFILE_LFC_EXECUTE executing Lease File Cleanup using: %1
An informational message issued when the memfile lease database backend
starts a new process to perform Lease File Cleanup.

% DHCPSRV_MEMFILE_LFC_LEASE_FILE_RENAME_FAIL failed to rename the current lease file %1 to %2, reason: %3
An error message logged when the memfile lease database backend fails to
move the current lease file to a new file on which the cleanup should
be performed. This effectively means that the lease file cleanup
does not take place.

% DHCPSRV_MEMFILE_LFC_LEASE_FILE_REOPEN_FAIL failed to reopen lease file %1 after preparing input file for lease file cleanup, reason: %2, new leases will not persist!
An error message logged when the memfile lease database backend
failed to re-open or re-create the lease file after renaming the
lease file for lease file cleanup. The server continues to
operate but leases do not persist to disk.

% DHCPSRV_MEMFILE_LFC_SETUP setting up the Lease File Cleanup interval to %1 sec
An informational message logged when the memfile lease database backend
configures the LFC to be executed periodically. The argument holds the
interval in seconds in which the LFC will be executed.

% DHCPSRV_MEMFILE_LFC_SPAWN_FAIL lease file cleanup failed to run because kea-lfc process couldn't be spawned
This error message is logged when the Kea server fails to run kea-lfc,
the program that cleans up the lease file. The server will try again the
next time a lease file cleanup is scheduled. Although this message should
not appear and the reason why it did investigated, the occasional failure
to start the lease file cleanup will not impact operations. Should the
failure persist however, the size of the lease file will increase without bound.

% DHCPSRV_MEMFILE_LFC_START starting Lease File Cleanup
An informational message issued when the Memfile lease database backend
starts the periodic Lease File Cleanup.

% DHCPSRV_MEMFILE_LFC_UNREGISTER_TIMER_FAILED failed to unregister timer 'memfile-lfc': %1
Logged at debug log level 40.
This debug message is logged when Memfile backend fails to unregister
timer used for lease file cleanup scheduling. There are several reasons
why this could occur, although the most likely cause is that the system
is being shut down and some other component has unregistered the timer.
The message includes the reason for this error.

% DHCPSRV_MEMFILE_NEEDS_DOWNGRADING version of lease file: %1 schema is later than version %2
A warning message issued when the schema of the lease file loaded by the server
is newer than the memfile schema of the server. The server converts the lease
data from newer schemas to its schema as it is read, therefore the lease
information in use by the server will be correct. Note though, that any data
stored in newer schema fields will be dropped. What remains is for the
file itself to be rewritten using the current schema.

% DHCPSRV_MEMFILE_NEEDS_UPGRADING version of lease file: %1 schema is earlier than version %2
A warning message issued when the schema of the lease file loaded by the server
pre-dates the memfile schema of the server. Note that the server converts the
lease data from older schemas to the current schema as it is read, therefore
the lease information in use by the server will be correct. What remains is
for the file itself to be rewritten using the current schema.

% 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_PATH_SECURITY_WARNING Lease file path specified is NOT SECURE: %1
This warning message is issued when security enforcement is
disabled and the lease file path specified for does not comply
with the supported path. The server will still use the specified
path but is warning that doing so may pose a security risk.

% DHCPSRV_MEMFILE_READ_HWADDR_FAIL failed to read hardware address from lease file: %1
A warning message issued when read attempt of the hardware address stored in
a disk file failed. The parameter should provide the exact nature of the failure.
The database read will continue, but that particular lease will no longer
have hardware address associated with it.

% DHCPSRV_MEMFILE_ROLLBACK rolling back memory file database
Logged at debug log level 50.
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
Logged at debug log level 50.
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
Logged at debug log level 50.
A debug message issued when the server is attempting to update IPv6
lease from the memory file database for the specified address.

% DHCPSRV_MEMFILE_WIPE_LEASES4 removing all IPv4 leases from subnet %1
This informational message is printed when removal of all leases from
specified IPv4 subnet is commencing. This is a result of receiving administrative
command.

% DHCPSRV_MEMFILE_WIPE_LEASES4_FINISHED removing all IPv4 leases from subnet %1 finished, removed %2 leases
This informational message is printed when removal of all leases from
a specified IPv4 subnet has finished. The number of removed leases is
printed.

% DHCPSRV_MEMFILE_WIPE_LEASES6 removing all IPv6 leases from subnet %1
This informational message is printed when removal of all leases from
specified IPv6 subnet is commencing. This is a result of receiving administrative
command.

% DHCPSRV_MEMFILE_WIPE_LEASES6_FINISHED removing all IPv6 leases from subnet %1 finished, removed %2 leases
This informational message is printed when removal of all leases from
a specified IPv6 subnet has finished. The number of removed leases is
printed.

% DHCPSRV_MT_DISABLED_QUEUE_CONTROL disabling dhcp queue control when multi-threading is enabled.
This warning message is issued when dhcp queue control is disabled automatically
if multi-threading is enabled. These two options are incompatible and can not
both be enabled at the same time.

% DHCPSRV_MULTIPLE_RAW_SOCKETS_PER_IFACE current configuration will result in opening multiple broadcast capable sockets on some interfaces and some DHCP messages may be duplicated
A warning message issued when the current configuration indicates that multiple
sockets, capable of receiving broadcast traffic, will be opened on some of the
interfaces. It must be noted that this may lead to receiving and processing
the same DHCP message multiple times, as it will be received by each socket
individually.

% 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_NO_SOCKETS_OPEN no interface configured to listen to DHCP traffic
This warning message is issued when the current server configuration specifies
no interfaces that the server should listen on, or when the specified interfaces are not
configured to receive the traffic.

% DHCPSRV_ONLY_IF_REQUIRED_DEPRECATED The parameter 'only-if-required' is deprecated. Use 'only-in-additional-list' instead
This warning message is emitted when configuration parsing detects
the use of the deprecated 'only-if-required' parameter. It has
been replaced by 'only-in-additional-list'.  Users should migrate
to the new parameter.

% DHCPSRV_OPEN_SOCKET_FAIL failed to open socket: %1
A warning message issued when IfaceMgr fails to open and bind a socket.
The reason for the failure is appended as an argument of the log message.

% DHCPSRV_QUEUE_NCR %1: Name change request to %2 DNS entry queued: %3
Logged at debug log level 55.
A debug message which is logged when the NameChangeRequest to add or remove
a DNS entries for a particular lease has been queued. The first argument
includes the client identification information. The second argument
indicates whether the DNS entry is to be added or removed. The third
argument carries the details of the NameChangeRequest.

% DHCPSRV_QUEUE_NCR_FAILED %1: queuing %2 name change request failed for lease %3: %4
This error message is logged when sending a NameChangeRequest
to DHCP DDNS failed. The first argument includes the client identification
information. The second argument indicates whether the DNS entry is to be
added or removed. The third argument specifies the leased address. The
last argument provides the reason for failure.

% DHCPSRV_QUEUE_NCR_SKIP %1: skip queuing name change request for lease: %2
Logged at debug log level 50.
This debug message is issued when the server decides to not queue the name
change request because the lease doesn't include the FQDN, the forward and
reverse update is disabled for this lease or the DNS updates are disabled
in the configuration. The first argument includes the client identification
information. The second argument includes the leased address.

% DHCPSRV_REQUIRE_CLIENT_CLASSES_DEPRECATED The parameter 'require-client-classes' is deprecated. Use 'evaluate-additional-classes' instead
This warning message is emitted when configuration parsing detects
the use of the deprecated 'require-client-classes' parameter. It has
been replaced by 'evaluate-additional-classes'.  Users should migrate
to the new parameter.

% DHCPSRV_SUBNET4O6_SELECT_FAILED Failed to select any subnet for the DHCPv4o6 packet
Logged at debug log level 40.
A debug message issued when the server was unable to select any subnet for the
DHCPv4o6 packet.

% DHCPSRV_SUBNET4_SELECT_BY_ADDRESS_NO_MATCH No subnet matches address: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified address.

% DHCPSRV_SUBNET4_SELECT_BY_INTERFACE_NO_MATCH No subnet matches interface: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified interface name.

% DHCPSRV_SUBNET4_SELECT_BY_RELAY_ADDRESS_NO_MATCH No subnet matches relay address: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified relay address.

% DHCPSRV_SUBNET4_SELECT_NO_RAI_OPTIONS No RAI options found to use for subnet selection.
Logged at debug log level 40.
A debug message issued by the server when the client query does not include RAI
options suitable for use with subnet selection.

% DHCPSRV_SUBNET4_SELECT_NO_RELAY_ADDRESS Relay address (giaddr) in client packet is empty.
Logged at debug log level 40.
A debug message issued when no relay address was specified to use for subnet
selection.

% DHCPSRV_SUBNET4_SELECT_NO_USABLE_ADDRESS No subnet selected because no suitable address to use for subnet selection was found.
Logged at debug log level 40.
A debug message issued when the server was find a suitable address to use for
subnet selection.

% DHCPSRV_SUBNET6_SELECT_BY_ADDRESS_NO_MATCH No subnet matches address: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified address.

% DHCPSRV_SUBNET6_SELECT_BY_INTERFACE_ID_NO_MATCH No subnet matches interface id: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified interface id.

% DHCPSRV_SUBNET6_SELECT_BY_INTERFACE_NO_MATCH No subnet matches interface: %1
Logged at debug log level 40.
A debug message issued when the server was unable to select a subnet using
the specified interface name.

% DHCPSRV_TEMPLATE_EVAL_ERROR %1: Expression '%2' evaluated to %3
This error message indicates that a problem was encountered while
evaluating an expression of a template client class.
A description of the problem is printed.

% DHCPSRV_TEMPLATE_EVAL_RESULT %1: Expression '%2' evaluated to %3
Logged at debug log level 50.
This debug message indicates that the expression of a template client class has
been successfully evaluated. The client class name and the result value of the
evaluation are printed.

% DHCPSRV_TIMERMGR_CALLBACK_FAILED running handler for timer %1 caused exception: %2
This error message is emitted when the timer elapsed and the
operation associated with this timer has thrown an exception.
The timer name and the reason for exception is logged.

% DHCPSRV_TIMERMGR_REGISTER_TIMER registering timer: %1, using interval: %2 ms
Logged at debug log level 40.
A debug message issued when the new interval timer is registered in
the Timer Manager. This timer will have a callback function
associated with it, and this function will be executed according
to the interval specified. The unique name of the timer and the
interval at which the callback function will be executed is
included in the message.

% DHCPSRV_TIMERMGR_RUN_TIMER_OPERATION running operation for timer: %1
Logged at debug log level 50.
A debug message issued when the Timer Manager is about to
run a periodic operation associated with the given timer.
An example of such operation is a periodic cleanup of
expired leases. The name of the timer is included in the
message.

% DHCPSRV_TIMERMGR_START_TIMER starting timer: %1
Logged at debug log level 40.
A debug message issued when the registered interval timer is
being started. If this operation is successful the timer will
periodically execute the operation associated with it. The
name of the started timer is included in the message.

% DHCPSRV_TIMERMGR_STOP_TIMER stopping timer: %1
Logged at debug log level 40.
A debug message issued when the registered interval timer is
being stopped. The timer remains registered and can be restarted
if necessary. The name of the timer is included in the message.

% DHCPSRV_TIMERMGR_UNREGISTER_ALL_TIMERS unregistering all timers
Logged at debug log level 40.
A debug message issued when all registered interval timers are
being unregistered from the Timer Manager.

% DHCPSRV_TIMERMGR_UNREGISTER_TIMER unregistering timer: %1
Logged at debug log level 40.
A debug message issued when one of the registered interval timers
is unregistered from the Timer Manager. The name of the timer is
included in the message.

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

% LEGAL_LOG_PATH_SECURITY_WARNING Forensic log path specified is NOT SECURE: %1
This warning message is issued when security enforcement is
disabled and the path specified for forensic logging output
does not comply with the supported path. The server will
still use the specified path but is warning that doing so may
pose a security risk.
