2
0
mirror of https://gitlab.isc.org/isc-projects/kea synced 2025-08-31 05:55:28 +00:00

[support8785] std::exception, not just isc::Exception is caught

If std::exception would be thrown anywhere in message processing
  in Dhcp4Srv::run(), we would not catch it. In principle, that
  should never happen, as the Kea code only throws isc::Exception
  derivatives, but maybe some of the system or boost calls could
  throw std::exception.
This commit is contained in:
Tomek Mrugalski
2015-08-17 20:49:39 +02:00
parent 8b42a07752
commit f1982bb487

View File

@@ -617,11 +617,12 @@ Dhcpv4Srv::run() {
// "switch" statement.
;
}
} catch (const isc::Exception& e) {
} catch (const std::exception& e) {
// Catch-all exception (at least for ones based on the isc Exception
// class, which covers more or less all that are explicitly raised
// in the Kea code). Just log the problem and ignore the packet.
// Catch-all exception (we used to call only isc::Exception, but
// std::exception could potentially be raised and if we don't catch
// it here, it would be caught in main() and the process would
// terminate). Just log the problem and ignore the packet.
// (The problem is logged as a debug message because debug is
// disabled by default - it prevents a DDOS attack based on the
// sending of problem packets.)