{
int as_route = 0;
if(!route->dst_gateway && !route->src_gateway)
- XBT_INFO("Load Route from \"%s\" to \"%s\"", src, dst);
+ XBT_DEBUG("Load Route from \"%s\" to \"%s\"", src, dst);
else{
- XBT_INFO("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", src,
+ XBT_DEBUG("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", src,
route->src_gateway->name, dst, route->dst_gateway->name);
as_route = 1;
if(route->dst_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
)
{
if(!route->dst_gateway && !route->src_gateway)
- XBT_INFO("Load Route from \"%s\" to \"%s\"", dst, src);
+ XBT_DEBUG("Load Route from \"%s\" to \"%s\"", dst, src);
else
- XBT_INFO("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", dst,
+ XBT_DEBUG("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", dst,
route->dst_gateway->name, src, route->src_gateway->name);
xbt_dynar_t nodes = xbt_graph_get_nodes(as->route_graph);
void model_floyd_parse_route(AS_t rc, const char *src,
const char *dst, route_t route)
{
- as_floyd_t as = (as_floyd_t) rc;
+ int as_route = 0;
+ as_floyd_t as = (as_floyd_t) rc;
/* set the size of table routing */
size_t table_size = xbt_dynar_length(rc->index_network_elm);
TO_FLOYD_LINK(i, j) = NULL; /* fixed, missing in the previous version */
}
}
+ if(!route->dst_gateway && !route->src_gateway)
+ XBT_DEBUG("Load Route from \"%s\" to \"%s\"", src, dst);
+ else{
+ as_route = 1;
+ XBT_DEBUG("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", src,
+ route->src_gateway->name, dst, route->dst_gateway->name);
+ if(route->dst_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
+ xbt_die("The dst_gateway '%s' does not exist!",route->dst_gateway->name);
+ if(route->src_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
+ xbt_die("The src_gateway '%s' does not exist!",route->src_gateway->name);
+ }
if(TO_FLOYD_LINK(src_net_elm->id, dst_net_elm->id))
{
- if(!route->dst_gateway && !route->src_gateway)
- XBT_DEBUG("See Route from \"%s\" to \"%s\"", src, dst);
- else
- XBT_DEBUG("See ASroute from \"%s(%s)\" to \"%s(%s)\"", src,
- route->src_gateway->name, dst, route->dst_gateway->name);
+
char * link_name;
unsigned int cpt;
xbt_dynar_t link_route_to_test = xbt_dynar_new(global_routing->size_of_link, NULL);
}
else
{
- if(!route->dst_gateway && !route->src_gateway)
- XBT_DEBUG("Load Route from \"%s\" to \"%s\"", src, dst);
- else{
- XBT_DEBUG("Load ASroute from \"%s(%s)\" to \"%s(%s)\"", src,
- route->src_gateway->name, dst, route->dst_gateway->name);
- if(route->dst_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
- xbt_die("The dst_gateway '%s' does not exist!",route->dst_gateway->name);
- if(route->src_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
- xbt_die("The src_gateway '%s' does not exist!",route->src_gateway->name);
- }
TO_FLOYD_LINK(src_net_elm->id, dst_net_elm->id) =
generic_new_extended_route(rc->hierarchy, route, 1);
TO_FLOYD_PRED(src_net_elm->id, dst_net_elm->id) = src_net_elm->id;
((TO_FLOYD_LINK(src_net_elm->id, dst_net_elm->id))->link_list)->used; /* count of links, old model assume 1 */
}
- if( A_surfxml_route_symmetrical == A_surfxml_route_symmetrical_YES
- || A_surfxml_ASroute_symmetrical == A_surfxml_ASroute_symmetrical_YES )
+ if ( (A_surfxml_route_symmetrical == A_surfxml_route_symmetrical_YES && as_route == 0)
+ || (A_surfxml_ASroute_symmetrical == A_surfxml_ASroute_symmetrical_YES && as_route == 1)
+ )
{
if(TO_FLOYD_LINK(dst_net_elm->id, src_net_elm->id))
{
const char *dst, route_t route)
{
network_element_t src_net_elm, dst_net_elm;
-
+ int as_route = 0;
src_net_elm = xbt_lib_get_or_null(host_lib, src, ROUTING_HOST_LEVEL);
dst_net_elm = xbt_lib_get_or_null(host_lib, dst, ROUTING_HOST_LEVEL);
if (!src_net_elm)
// "in a sub-sub-AS is not allowed), "
// "but '%s' is not in '%s'.",
// route->dst_gateway, subas->name);
-
+ as_route = 1;
XBT_DEBUG("Load ASroute from \"%s(%s)\" to \"%s(%s)\"",
src, route->src_gateway->name, dst, route->dst_gateway->name);
if (route->dst_gateway->rc_type == SURF_NETWORK_ELEMENT_NULL)
xbt_dynar_shrink(TO_ROUTE_FULL(src_net_elm->id, dst_net_elm->id)->link_list, 0);
}
- if (A_surfxml_route_symmetrical == A_surfxml_route_symmetrical_YES
- || A_surfxml_ASroute_symmetrical == A_surfxml_ASroute_symmetrical_YES) {
+ if ( (A_surfxml_route_symmetrical == A_surfxml_route_symmetrical_YES && as_route == 0)
+ || (A_surfxml_ASroute_symmetrical == A_surfxml_ASroute_symmetrical_YES && as_route == 1)
+ ) {
if (route->dst_gateway && route->src_gateway) {
network_element_t gw_tmp;
gw_tmp = route->src_gateway;