diff --git a/repos/os/src/server/nic_router/interface.cc b/repos/os/src/server/nic_router/interface.cc index 1ace557f17..980c0ebbfc 100644 --- a/repos/os/src/server/nic_router/interface.cc +++ b/repos/os/src/server/nic_router/interface.cc @@ -350,7 +350,6 @@ void Interface::_handle_ip(Ethernet_frame ð, return; } catch (Forward_rule_tree::No_match) { } - catch (Pointer::Invalid) { } } /* try to route via transport and permit rules */ try { @@ -372,7 +371,6 @@ void Interface::_handle_ip(Ethernet_frame ð, } catch (Transport_rule_list::No_match) { } catch (Permit_single_rule_tree::No_match) { } - catch (Pointer::Invalid) { } /* try to route via IP rules */ try { @@ -388,7 +386,6 @@ void Interface::_handle_ip(Ethernet_frame ð, return; } catch (Ip_rule_list::No_match) { } - catch (Pointer::Invalid) { } /* give up and drop packet */ if (_config().verbose()) { @@ -550,6 +547,9 @@ void Interface::_handle_eth(void *const eth_base, catch (Domain::No_next_hop) { error("can not find next hop"); } + + catch (Pointer::Invalid) { + error("no interface connected to domain"); } }