ASroute.gw_src = sg_routing_edge_by_name_or_null(A_surfxml_ASroute_gw___src);
ASroute.gw_dst = sg_routing_edge_by_name_or_null(A_surfxml_ASroute_gw___dst);
+ 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);
+
ASroute.link_list = parsed_link_list;
switch (A_surfxml_ASroute_symmetrical) {
+! expect signal SIGABRT
$ ${bindir:=.}/flatifier bogus_missing_src_gateway.xml "--log=root.fmt:[%10.6r]%e[%i:%P@%h]%e%m%n"
> [ 0.000000] [0:@] surf_workstation_model_init_ptask_L07
-> [ 0.000000] [0:@] Parse error <some informative message>
+> [ 0.000000] [0:@] Parse error at bogus_missing_src_gateway.xml:16: gw_src="nod-cluster_router.cluster.us" not found for ASroute from "us" to "fr"
+! expect signal SIGABRT
$ ${bindir:=.}/flatifier bogus_missing_dst_gateway.xml "--log=root.fmt:[%10.6r]%e[%i:%P@%h]%e%m%n"
> [ 0.000000] [0:@] surf_workstation_model_init_ptask_L07
-> [ 0.000000] [0:@] Parse error <some informative message>
+> [ 0.000000] [0:@] Parse error at bogus_missing_dst_gateway.xml:16: gw_dst="neud-grappe_router.grappe.fr" not found for ASroute from "us" to "fr"