- XBT_DEBUG("vivaldi getLocalRoute from '%s'[%d] '%s'[%d]", src->cname(), src->id(), dst->cname(), dst->id());
-
- if (src->isAS()) {
- char* srcName = bprintf("router_%s", src->cname());
- char* dstName = bprintf("router_%s", dst->cname());
- route->gw_src = (sg_netcard_t)xbt_lib_get_or_null(as_router_lib, srcName, ROUTING_ASR_LEVEL);
- route->gw_dst = (sg_netcard_t)xbt_lib_get_or_null(as_router_lib, dstName, ROUTING_ASR_LEVEL);
- xbt_free(srcName);
- xbt_free(dstName);
+ XBT_DEBUG("vivaldi getLocalRoute from '%s'[%u] '%s'[%u]", src->getCname(), src->id(), dst->getCname(), dst->id());
+
+ if (src->isNetZone()) {
+ std::string srcName = "router_" + src->getName();
+ std::string dstName = "router_" + dst->getName();
+ route->gw_src = simgrid::s4u::Engine::getInstance()->getNetpointByNameOrNull(srcName.c_str());
+ route->gw_dst = simgrid::s4u::Engine::getInstance()->getNetpointByNameOrNull(dstName.c_str());