option is skipped. The argument holds the client and transaction identification
information.
+% DHCP4_HANDLE_SIGNAL_EXCEPTION_ISC An ISC exception was thrown while handing signal: %1
+This error message is printed when an ISC exception was raised during signal
+processing. This likely indicates a coding error and should be reported to ISC.
+
+% DHCP4_HANDLE_SIGNAL_EXCEPTION_STD An standard exception was thrown while handing signal: %1
+This error message is printed when a standard type exception was raised during signal
+processing. This likely indicates a coding error and should be reported to ISC.
+
% DHCP4_HOOKS_LIBS_RELOAD_FAIL reload of hooks libraries failed
A "libreload" command was issued to reload the hooks libraries but for
some reason the reload failed. Other error messages issued from the
// select() function is called. If the function was called before
// receivePacket the process could wait up to the duration of timeout
// of select() to terminate.
- handleSignal();
+ try {
+ handleSignal();
+ } catch (const isc::Exception& e) {
+ // ISC-derived exception occurred. The nature of this exception
+ // indicates that it originated from ISC code. If this happens,
+ // it will be easy to fix as it is in the code that is under
+ // ISC control.
+ LOG_ERROR(dhcp4_logger, DHCP4_HANDLE_SIGNAL_EXCEPTION_ISC)
+ .arg(e.what());
+ } catch (const std::exception& e) {
+ // Standard exception occurred. The nature of this exception
+ // indicates that it was caused in non-ISC code. Fixing this
+ // issue will be somewhat more difficult than the one caused
+ // by ISC code.
+ LOG_ERROR(dhcp4_logger, DHCP4_HANDLE_SIGNAL_EXCEPTION_STD)
+ .arg(e.what());
+ }
// Execute ready timers for the lease database, e.g. Lease File Cleanup.
try {