- xbt_assert(ruleroute_e->generic_rule_route.re_src,
- "PCRE compilation failed at offset %d (\"%s\"): %s\n",
- erroffset, dst, error);
- ruleroute_e->generic_rule_route.re_str_link =
- route->link_list;
- ruleroute_e->re_src_gateway = xbt_strdup((char *)route->src_gateway); // DIRTY HACK possible only
- ruleroute_e->re_dst_gateway = xbt_strdup((char *)route->dst_gateway); // because of what is in routing_parse_E_ASroute
+ xbt_assert(ruleroute_e->generic_rule_route.re_dst,
+ "PCRE compilation failed at offset %d (\"%s\"): %s\n",
+ erroffset, dst, error);
+
+ ruleroute_e->generic_rule_route.re_str_link = route->link_list;
+
+ // DIRTY PERL HACK AHEAD: with the rulebased routing, the {src,dst}_gateway fields
+ // store the provided name instead of the entity directly (routing_parse_E_ASroute knows)
+ //
+ // This is because the user will provide something like "^AS_(.*)$" instead of the proper name of a given entity
+ ruleroute_e->re_src_gateway = xbt_strdup((char *)route->gw_src);
+ ruleroute_e->re_dst_gateway = xbt_strdup((char *)route->gw_dst);