diff --git a/repos/os/src/server/nic_router/interface.cc b/repos/os/src/server/nic_router/interface.cc index f40c812635..d0e4d1df4e 100644 --- a/repos/os/src/server/nic_router/interface.cc +++ b/repos/os/src/server/nic_router/interface.cc @@ -922,9 +922,6 @@ void Interface::_handle_eth(void *const eth_base, catch (Domain::No_next_hop) { error("can not find next hop"); } - catch (List::Empty) { - error("no interface connected to domain"); } - catch (Alloc_dhcp_msg_buffer_failed) { error("failed to allocate buffer for DHCP reply"); } diff --git a/repos/os/src/server/nic_router/list.h b/repos/os/src/server/nic_router/list.h index e13a70aca5..64bc2c2e31 100644 --- a/repos/os/src/server/nic_router/list.h +++ b/repos/os/src/server/nic_router/list.h @@ -24,18 +24,11 @@ namespace Net { template struct Net::List : Genode::List { - using Base = Genode::List; - - struct Empty : Genode::Exception { }; - template void for_each(FUNC && functor) { - if (!Base::first()) { - throw Empty(); - } - for (LT * elem = Base::first(); elem; - elem = elem->Base::Element::next()) + for (LT * elem = Genode::List::first(); elem; + elem = elem->Genode::List::Element::next()) { functor(*elem); }