lua_pop(L, 1);
XBT_DEBUG("Create a host_link for host %s", netcard.id);
- sg_platf_new_netcard(&netcard);
+ sg_platf_new_hostlink(&netcard);
return 0;
}
surfxml_bufferstack = xbt_new0(char, surfxml_bufferstack_size);
if (! lua_istable(L, -1)) {
- XBT_ERROR("Bad Arguments to create a route. Should be a table with named arguments");
+ XBT_ERROR("Bad Arguments to add a route. Should be a table with named arguments");
return -1;
}
lua_pushstring(L, "gw_src");
lua_gettable(L, -2);
- ASroute.gw_src = sg_netcard_by_name_or_null(lua_tostring(L, -1));
+ const char *name = lua_tostring(L, -1);
+ ASroute.gw_src = sg_netcard_by_name_or_null(name);
+ if (ASroute.gw_src == NULL) {
+ XBT_ERROR("Attribute 'gw_src' of AS route does not name a valid machine: %s", name);
+ return -1;
+ }
lua_pop(L, 1);
lua_pushstring(L, "gw_dst");
lua_gettable(L, -2);
- ASroute.gw_dst = sg_netcard_by_name_or_null(lua_tostring(L, -1));
+ name = lua_tostring(L, -1);
+ ASroute.gw_dst = sg_netcard_by_name_or_null(name);
+ if (ASroute.gw_dst == NULL) {
+ XBT_ERROR("Attribute 'gw_dst' of AS route does not name a valid machine: %s", name);
+ return -1;
+ }
lua_pop(L, 1);
- /*if (A_surfxml_ASroute_gw___src && !ASroute.gw_src)*/
- /*surf_parse_error("gw_src=\"%s\" not found for ASroute from \"%s\" to \"%s\"",*/
- /*A_surfxml_ASroute_gw___src, ASroute.src, ASroute.dst);*/
- /*if (A_surfxml_ASroute_gw___dst && !ASroute.gw_dst)*/
- /*surf_parse_error("gw_dst=\"%s\" not found for ASroute from \"%s\" to \"%s\"",*/
- /*A_surfxml_ASroute_gw___dst, ASroute.src, ASroute.dst);*/
-
lua_pushstring(L,"links");
lua_gettable(L,-2);
ASroute.link_list = xbt_str_split(lua_tostring(L, -1), ", \t\r\n");
lua_gettable(L,-2);
if (lua_isstring(L, -1)) {
const char* value = lua_tostring(L, -1);
- if (strcmp("YES", value) == 0) {
+ if (strcmp("YES", value) == 0)
ASroute.symmetrical = TRUE;
- }
else
ASroute.symmetrical = FALSE;
}
}
lua_pop(L,1);
- sg_platf_new_ASroute(&ASroute);
+ sg_platf_new_route(&ASroute);
return 0;
}