X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/6ad3dc7768dc9da9cb1960032ed93e38d1cad956..08cf7e3a40c09ef4a15a13633b533c074d5bca0f:/src/surf/simgrid_dtd.l diff --git a/src/surf/simgrid_dtd.l b/src/surf/simgrid_dtd.l index e8cd5dc28c..e684a0a269 100644 --- a/src/surf/simgrid_dtd.l +++ b/src/surf/simgrid_dtd.l @@ -1,10 +1,9 @@ -/* Validating XML processor for surf/simgrid.dtd. - * Generated 2008/01/23 16:38:27. +/* Validating XML processor for src/surf/simgrid.dtd. * * This program was generated with the FleXML XML processor generator. * FleXML is Copyright (C) 1999-2005 Kristoffer Rose. All rights reserved. * FleXML is Copyright (C) 2003-2006 Martin Quinson. All rights reserved. - * (Id: flexml.pl,v 1.63 2007/10/11 14:46:08 mquinson Exp). + * (Id: flexml.pl,v 1.62 2007/10/11 10:00:14 mquinson Exp). * * There are two, intertwined parts to this program, part A and part B. * @@ -51,7 +50,7 @@ const char rcs_surfxml_flexml_skeleton[] = "$" "Id: skel,v 1.40 2007/10/11 09:57:24 mquinson Exp $"; const char rcs_surfxml_flexml[] = - "$" "Id: flexml.pl,v 1.63 2007/10/11 14:46:08 mquinson Exp $"; + "$" "Id: flexml.pl,v 1.62 2007/10/11 10:00:14 mquinson Exp $"; /* ANSI headers. */ #include /* for realloc() -- needed here when using flex 2.5.4 */ @@ -61,7 +60,7 @@ const char rcs_surfxml_flexml[] = #include #include -#if defined(_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) +#if defined(_XBT_WIN32) || defined(__WIN32__) || defined(WIN32) || defined(__TOS_WIN__) # ifndef __STRICT_ANSI__ # include # include @@ -88,26 +87,28 @@ extern char *surfxml_bufferstack; #define surfxml_pcdata (surfxml_bufferstack + surfxml_pcdata_ix) AT_surfxml_random_generator AX_surfxml_random_generator; #define A_surfxml_random_generator AX_surfxml_random_generator +AT_surfxml_ASroute_gw_dst AX_surfxml_ASroute_gw_dst; +#define A_surfxml_ASroute_gw_dst (surfxml_bufferstack + AX_surfxml_ASroute_gw_dst) +AT_surfxml_trace_connect_element AX_surfxml_trace_connect_element; +#define A_surfxml_trace_connect_element (surfxml_bufferstack + AX_surfxml_trace_connect_element) AT_surfxml_prop_id AX_surfxml_prop_id; #define A_surfxml_prop_id (surfxml_bufferstack + AX_surfxml_prop_id) -AT_surfxml_host_interference_recv AX_surfxml_host_interference_recv; -#define A_surfxml_host_interference_recv (surfxml_bufferstack + AX_surfxml_host_interference_recv) AT_surfxml_host_id AX_surfxml_host_id; #define A_surfxml_host_id (surfxml_bufferstack + AX_surfxml_host_id) -AT_surfxml_set_id AX_surfxml_set_id; -#define A_surfxml_set_id (surfxml_bufferstack + AX_surfxml_set_id) +AT_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical; +#define A_surfxml_ASroute_symmetrical AX_surfxml_ASroute_symmetrical +AT_surfxml_peer_lat AX_surfxml_peer_lat; +#define A_surfxml_peer_lat (surfxml_bufferstack + AX_surfxml_peer_lat) AT_surfxml_link_latency_file AX_surfxml_link_latency_file; #define A_surfxml_link_latency_file (surfxml_bufferstack + AX_surfxml_link_latency_file) +AT_surfxml_peer_availability_file AX_surfxml_peer_availability_file; +#define A_surfxml_peer_availability_file (surfxml_bufferstack + AX_surfxml_peer_availability_file) +AT_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction; +#define A_surfxml_link_ctn_direction AX_surfxml_link_ctn_direction AT_surfxml_host_state AX_surfxml_host_state; #define A_surfxml_host_state AX_surfxml_host_state -AT_surfxml_host_interference_send_recv AX_surfxml_host_interference_send_recv; -#define A_surfxml_host_interference_send_recv (surfxml_bufferstack + AX_surfxml_host_interference_send_recv) -AT_surfxml_host_interference_send AX_surfxml_host_interference_send; -#define A_surfxml_host_interference_send (surfxml_bufferstack + AX_surfxml_host_interference_send) -AT_surfxml_set_suffix AX_surfxml_set_suffix; -#define A_surfxml_set_suffix (surfxml_bufferstack + AX_surfxml_set_suffix) -AT_surfxml_route_impact_on_dst AX_surfxml_route_impact_on_dst; -#define A_surfxml_route_impact_on_dst (surfxml_bufferstack + AX_surfxml_route_impact_on_dst) +AT_surfxml_AS_id AX_surfxml_AS_id; +#define A_surfxml_AS_id (surfxml_bufferstack + AX_surfxml_AS_id) AT_surfxml_host_power AX_surfxml_host_power; #define A_surfxml_host_power (surfxml_bufferstack + AX_surfxml_host_power) AT_surfxml_router_id AX_surfxml_router_id; @@ -116,50 +117,58 @@ AT_surfxml_process_start_time AX_surfxml_process_start_time; #define A_surfxml_process_start_time (surfxml_bufferstack + AX_surfxml_process_start_time) AT_surfxml_cluster_suffix AX_surfxml_cluster_suffix; #define A_surfxml_cluster_suffix (surfxml_bufferstack + AX_surfxml_cluster_suffix) -AT_surfxml_platform_xmlns_c_route AX_surfxml_platform_xmlns_c_route; -#define A_surfxml_platform_xmlns_c_route (surfxml_bufferstack + AX_surfxml_platform_xmlns_c_route) +AT_surfxml_ASroute_src AX_surfxml_ASroute_src; +#define A_surfxml_ASroute_src (surfxml_bufferstack + AX_surfxml_ASroute_src) AT_surfxml_cluster_prefix AX_surfxml_cluster_prefix; #define A_surfxml_cluster_prefix (surfxml_bufferstack + AX_surfxml_cluster_prefix) AT_surfxml_trace_file AX_surfxml_trace_file; #define A_surfxml_trace_file (surfxml_bufferstack + AX_surfxml_trace_file) -AT_surfxml_route_action AX_surfxml_route_action; -#define A_surfxml_route_action AX_surfxml_route_action AT_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy; #define A_surfxml_link_sharing_policy AX_surfxml_link_sharing_policy AT_surfxml_random_min AX_surfxml_random_min; #define A_surfxml_random_min (surfxml_bufferstack + AX_surfxml_random_min) +AT_surfxml_link_ctn_id AX_surfxml_link_ctn_id; +#define A_surfxml_link_ctn_id (surfxml_bufferstack + AX_surfxml_link_ctn_id) +AT_surfxml_peer_bw_out AX_surfxml_peer_bw_out; +#define A_surfxml_peer_bw_out (surfxml_bufferstack + AX_surfxml_peer_bw_out) +AT_surfxml_cluster_availability_file AX_surfxml_cluster_availability_file; +#define A_surfxml_cluster_availability_file (surfxml_bufferstack + AX_surfxml_cluster_availability_file) AT_surfxml_process_kill_time AX_surfxml_process_kill_time; #define A_surfxml_process_kill_time (surfxml_bufferstack + AX_surfxml_process_kill_time) AT_surfxml_cluster_bb_bw AX_surfxml_cluster_bb_bw; #define A_surfxml_cluster_bb_bw (surfxml_bufferstack + AX_surfxml_cluster_bb_bw) -AT_surfxml_trace_c_connect_element AX_surfxml_trace_c_connect_element; -#define A_surfxml_trace_c_connect_element AX_surfxml_trace_c_connect_element AT_surfxml_argument_value AX_surfxml_argument_value; #define A_surfxml_argument_value (surfxml_bufferstack + AX_surfxml_argument_value) AT_surfxml_link_state AX_surfxml_link_state; #define A_surfxml_link_state AX_surfxml_link_state -AT_surfxml_route_impact_on_src AX_surfxml_route_impact_on_src; -#define A_surfxml_route_impact_on_src (surfxml_bufferstack + AX_surfxml_route_impact_on_src) +AT_surfxml_ASroute_gw_src AX_surfxml_ASroute_gw_src; +#define A_surfxml_ASroute_gw_src (surfxml_bufferstack + AX_surfxml_ASroute_gw_src) +AT_surfxml_AS_routing AX_surfxml_AS_routing; +#define A_surfxml_AS_routing (surfxml_bufferstack + AX_surfxml_AS_routing) AT_surfxml_link_bandwidth AX_surfxml_link_bandwidth; #define A_surfxml_link_bandwidth (surfxml_bufferstack + AX_surfxml_link_bandwidth) AT_surfxml_cluster_id AX_surfxml_cluster_id; #define A_surfxml_cluster_id (surfxml_bufferstack + AX_surfxml_cluster_id) +AT_surfxml_peer_bw_in AX_surfxml_peer_bw_in; +#define A_surfxml_peer_bw_in (surfxml_bufferstack + AX_surfxml_peer_bw_in) AT_surfxml_random_mean AX_surfxml_random_mean; #define A_surfxml_random_mean (surfxml_bufferstack + AX_surfxml_random_mean) AT_surfxml_cluster_bb_lat AX_surfxml_cluster_bb_lat; #define A_surfxml_cluster_bb_lat (surfxml_bufferstack + AX_surfxml_cluster_bb_lat) AT_surfxml_link_latency AX_surfxml_link_latency; #define A_surfxml_link_latency (surfxml_bufferstack + AX_surfxml_link_latency) -AT_surfxml_trace_c_connect_trace_id AX_surfxml_trace_c_connect_trace_id; -#define A_surfxml_trace_c_connect_trace_id (surfxml_bufferstack + AX_surfxml_trace_c_connect_trace_id) -AT_surfxml_platform_xmlns_c_link AX_surfxml_platform_xmlns_c_link; -#define A_surfxml_platform_xmlns_c_link (surfxml_bufferstack + AX_surfxml_platform_xmlns_c_link) +AT_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind; +#define A_surfxml_trace_connect_kind AX_surfxml_trace_connect_kind +AT_surfxml_random_seed AX_surfxml_random_seed; +#define A_surfxml_random_seed (surfxml_bufferstack + AX_surfxml_random_seed) +AT_surfxml_cluster_state_file AX_surfxml_cluster_state_file; +#define A_surfxml_cluster_state_file (surfxml_bufferstack + AX_surfxml_cluster_state_file) AT_surfxml_link_bandwidth_file AX_surfxml_link_bandwidth_file; #define A_surfxml_link_bandwidth_file (surfxml_bufferstack + AX_surfxml_link_bandwidth_file) +AT_surfxml_route_symmetrical AX_surfxml_route_symmetrical; +#define A_surfxml_route_symmetrical AX_surfxml_route_symmetrical AT_surfxml_random_id AX_surfxml_random_id; #define A_surfxml_random_id (surfxml_bufferstack + AX_surfxml_random_id) -AT_surfxml_set_radical AX_surfxml_set_radical; -#define A_surfxml_set_radical (surfxml_bufferstack + AX_surfxml_set_radical) AT_surfxml_random_max AX_surfxml_random_max; #define A_surfxml_random_max (surfxml_bufferstack + AX_surfxml_random_max) AT_surfxml_link_id AX_surfxml_link_id; @@ -172,52 +181,64 @@ AT_surfxml_cluster_lat AX_surfxml_cluster_lat; #define A_surfxml_cluster_lat (surfxml_bufferstack + AX_surfxml_cluster_lat) AT_surfxml_trace_periodicity AX_surfxml_trace_periodicity; #define A_surfxml_trace_periodicity (surfxml_bufferstack + AX_surfxml_trace_periodicity) -AT_surfxml_foreach_set_id AX_surfxml_foreach_set_id; -#define A_surfxml_foreach_set_id (surfxml_bufferstack + AX_surfxml_foreach_set_id) -AT_surfxml_route_impact_on_dst_with_other_send AX_surfxml_route_impact_on_dst_with_other_send; -#define A_surfxml_route_impact_on_dst_with_other_send (surfxml_bufferstack + AX_surfxml_route_impact_on_dst_with_other_send) +AT_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy; +#define A_surfxml_cluster_bb_sharing_policy AX_surfxml_cluster_bb_sharing_policy +AT_surfxml_router_coordinates AX_surfxml_router_coordinates; +#define A_surfxml_router_coordinates (surfxml_bufferstack + AX_surfxml_router_coordinates) +AT_surfxml_peer_coordinates AX_surfxml_peer_coordinates; +#define A_surfxml_peer_coordinates (surfxml_bufferstack + AX_surfxml_peer_coordinates) +AT_surfxml_peer_state_file AX_surfxml_peer_state_file; +#define A_surfxml_peer_state_file (surfxml_bufferstack + AX_surfxml_peer_state_file) AT_surfxml_prop_value AX_surfxml_prop_value; #define A_surfxml_prop_value (surfxml_bufferstack + AX_surfxml_prop_value) -AT_surfxml_route_impact_on_src_with_other_recv AX_surfxml_route_impact_on_src_with_other_recv; -#define A_surfxml_route_impact_on_src_with_other_recv (surfxml_bufferstack + AX_surfxml_route_impact_on_src_with_other_recv) +AT_surfxml_ASroute_dst AX_surfxml_ASroute_dst; +#define A_surfxml_ASroute_dst (surfxml_bufferstack + AX_surfxml_ASroute_dst) +AT_surfxml_random_radical AX_surfxml_random_radical; +#define A_surfxml_random_radical (surfxml_bufferstack + AX_surfxml_random_radical) AT_surfxml_link_state_file AX_surfxml_link_state_file; #define A_surfxml_link_state_file (surfxml_bufferstack + AX_surfxml_link_state_file) -AT_surfxml_set_prefix AX_surfxml_set_prefix; -#define A_surfxml_set_prefix (surfxml_bufferstack + AX_surfxml_set_prefix) +AT_surfxml_trace_connect_trace AX_surfxml_trace_connect_trace; +#define A_surfxml_trace_connect_trace (surfxml_bufferstack + AX_surfxml_trace_connect_trace) AT_surfxml_cluster_power AX_surfxml_cluster_power; #define A_surfxml_cluster_power (surfxml_bufferstack + AX_surfxml_cluster_power) AT_surfxml_process_function AX_surfxml_process_function; #define A_surfxml_process_function (surfxml_bufferstack + AX_surfxml_process_function) -AT_surfxml_host_max_outgoing_rate AX_surfxml_host_max_outgoing_rate; -#define A_surfxml_host_max_outgoing_rate (surfxml_bufferstack + AX_surfxml_host_max_outgoing_rate) -AT_surfxml_link_c_ctn_id AX_surfxml_link_c_ctn_id; -#define A_surfxml_link_c_ctn_id (surfxml_bufferstack + AX_surfxml_link_c_ctn_id) +AT_surfxml_peer_id AX_surfxml_peer_id; +#define A_surfxml_peer_id (surfxml_bufferstack + AX_surfxml_peer_id) +AT_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy; +#define A_surfxml_cluster_sharing_policy AX_surfxml_cluster_sharing_policy +AT_surfxml_bypassRoute_dst AX_surfxml_bypassRoute_dst; +#define A_surfxml_bypassRoute_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_dst) +AT_surfxml_host_core AX_surfxml_host_core; +#define A_surfxml_host_core (surfxml_bufferstack + AX_surfxml_host_core) AT_surfxml_host_availability AX_surfxml_host_availability; #define A_surfxml_host_availability (surfxml_bufferstack + AX_surfxml_host_availability) +AT_surfxml_bypassRoute_src AX_surfxml_bypassRoute_src; +#define A_surfxml_bypassRoute_src (surfxml_bufferstack + AX_surfxml_bypassRoute_src) AT_surfxml_route_src AX_surfxml_route_src; #define A_surfxml_route_src (surfxml_bufferstack + AX_surfxml_route_src) -AT_surfxml_route_c_multi_src AX_surfxml_route_c_multi_src; -#define A_surfxml_route_c_multi_src (surfxml_bufferstack + AX_surfxml_route_c_multi_src) -AT_surfxml_route_c_multi_action AX_surfxml_route_c_multi_action; -#define A_surfxml_route_c_multi_action AX_surfxml_route_c_multi_action +AT_surfxml_bypassRoute_gw_dst AX_surfxml_bypassRoute_gw_dst; +#define A_surfxml_bypassRoute_gw_dst (surfxml_bufferstack + AX_surfxml_bypassRoute_gw_dst) +AT_surfxml_host_coordinates AX_surfxml_host_coordinates; +#define A_surfxml_host_coordinates (surfxml_bufferstack + AX_surfxml_host_coordinates) AT_surfxml_trace_id AX_surfxml_trace_id; #define A_surfxml_trace_id (surfxml_bufferstack + AX_surfxml_trace_id) +AT_surfxml_peer_power AX_surfxml_peer_power; +#define A_surfxml_peer_power (surfxml_bufferstack + AX_surfxml_peer_power) AT_surfxml_cluster_radical AX_surfxml_cluster_radical; #define A_surfxml_cluster_radical (surfxml_bufferstack + AX_surfxml_cluster_radical) +AT_surfxml_config_id AX_surfxml_config_id; +#define A_surfxml_config_id (surfxml_bufferstack + AX_surfxml_config_id) +AT_surfxml_bypassRoute_gw_src AX_surfxml_bypassRoute_gw_src; +#define A_surfxml_bypassRoute_gw_src (surfxml_bufferstack + AX_surfxml_bypassRoute_gw_src) +AT_surfxml_cluster_core AX_surfxml_cluster_core; +#define A_surfxml_cluster_core (surfxml_bufferstack + AX_surfxml_cluster_core) AT_surfxml_include_file AX_surfxml_include_file; #define A_surfxml_include_file (surfxml_bufferstack + AX_surfxml_include_file) AT_surfxml_random_std_deviation AX_surfxml_random_std_deviation; #define A_surfxml_random_std_deviation (surfxml_bufferstack + AX_surfxml_random_std_deviation) -AT_surfxml_trace_c_connect_kind AX_surfxml_trace_c_connect_kind; -#define A_surfxml_trace_c_connect_kind AX_surfxml_trace_c_connect_kind -AT_surfxml_trace_c_connect_connector_id AX_surfxml_trace_c_connect_connector_id; -#define A_surfxml_trace_c_connect_connector_id (surfxml_bufferstack + AX_surfxml_trace_c_connect_connector_id) -AT_surfxml_route_c_multi_dst AX_surfxml_route_c_multi_dst; -#define A_surfxml_route_c_multi_dst (surfxml_bufferstack + AX_surfxml_route_c_multi_dst) AT_surfxml_host_state_file AX_surfxml_host_state_file; #define A_surfxml_host_state_file (surfxml_bufferstack + AX_surfxml_host_state_file) -AT_surfxml_route_c_multi_symmetric AX_surfxml_route_c_multi_symmetric; -#define A_surfxml_route_c_multi_symmetric AX_surfxml_route_c_multi_symmetric AT_surfxml_route_dst AX_surfxml_route_dst; #define A_surfxml_route_dst (surfxml_bufferstack + AX_surfxml_route_dst) AT_surfxml_cluster_bw AX_surfxml_cluster_bw; @@ -385,23 +406,25 @@ Literal \'[^'']*\'|\"[^""]*\" * IMPOSSIBLE dummy to permit disabling rules; must be last */ %x PROLOG DOCTYPE EPILOG INCOMMENT INPI VALUE1 VALUE2 CDATA -%x ROOT_surfxml_platform AL_surfxml_platform S_surfxml_platform S_surfxml_platform_1 S_surfxml_platform_2 S_surfxml_platform_3 S_surfxml_platform_4 S_surfxml_platform_5 E_surfxml_platform +%x ROOT_surfxml_platform AL_surfxml_platform S_surfxml_platform S_surfxml_platform_1 S_surfxml_platform_2 S_surfxml_platform_3 S_surfxml_platform_4 S_surfxml_platform_5 S_surfxml_platform_6 S_surfxml_platform_7 S_surfxml_platform_8 E_surfxml_platform %x AL_surfxml_include E_surfxml_include %x AL_surfxml_trace IN_trace %x AL_surfxml_random S_surfxml_random S_surfxml_random_1 S_surfxml_random_2 E_surfxml_random -%x AL_surfxml_trace_c_connect E_surfxml_trace_c_connect -%x AL_surfxml_set E_surfxml_set -%x AL_surfxml_foreach S_surfxml_foreach S_surfxml_foreach_1 E_surfxml_foreach +%x AL_surfxml_trace_connect E_surfxml_trace_connect +%x AL_surfxml_AS S_surfxml_AS S_surfxml_AS_1 S_surfxml_AS_2 S_surfxml_AS_3 S_surfxml_AS_4 S_surfxml_AS_5 S_surfxml_AS_6 S_surfxml_AS_7 S_surfxml_AS_8 S_surfxml_AS_9 S_surfxml_AS_10 S_surfxml_AS_11 S_surfxml_AS_12 S_surfxml_AS_13 E_surfxml_AS %x AL_surfxml_host S_surfxml_host S_surfxml_host_1 S_surfxml_host_2 E_surfxml_host -%x AL_surfxml_prop E_surfxml_prop %x AL_surfxml_cluster E_surfxml_cluster +%x AL_surfxml_peer E_surfxml_peer %x AL_surfxml_router E_surfxml_router %x AL_surfxml_link S_surfxml_link S_surfxml_link_1 S_surfxml_link_2 E_surfxml_link -%x AL_surfxml_route_c_multi S_surfxml_route_c_multi S_surfxml_route_c_multi_1 S_surfxml_route_c_multi_2 E_surfxml_route_c_multi %x AL_surfxml_route S_surfxml_route S_surfxml_route_1 S_surfxml_route_2 E_surfxml_route -%x AL_surfxml_link_c_ctn E_surfxml_link_c_ctn +%x AL_surfxml_ASroute S_surfxml_ASroute S_surfxml_ASroute_1 S_surfxml_ASroute_2 E_surfxml_ASroute +%x AL_surfxml_link_ctn E_surfxml_link_ctn +%x AL_surfxml_bypassRoute S_surfxml_bypassRoute S_surfxml_bypassRoute_1 S_surfxml_bypassRoute_2 E_surfxml_bypassRoute %x AL_surfxml_process S_surfxml_process S_surfxml_process_1 S_surfxml_process_2 E_surfxml_process %x AL_surfxml_argument E_surfxml_argument +%x AL_surfxml_config S_surfxml_config S_surfxml_config_1 S_surfxml_config_2 E_surfxml_config +%x AL_surfxml_prop E_surfxml_prop %x IMPOSSIBLE %{ @@ -432,17 +455,10 @@ const char* *surfxml_statenames=NULL; /* FleXML_init */ bnext = inext = 1; surfxml_bufferliteral('\0', &bnext, "0.0"); - surfxml_bufferliteral('\0', &bnext, "http://simgrid.gforge.inria.fr/"); - surfxml_bufferliteral('\0', &bnext, "http://simgrid.gforge.inria.fr/"); - surfxml_bufferliteral('\0', &bnext, "1.0"); - surfxml_bufferliteral('\0', &bnext, "1.0"); - surfxml_bufferliteral('\0', &bnext, "1.0"); + surfxml_bufferliteral('\0', &bnext, "2147483647"); + surfxml_bufferliteral('\0', &bnext, "1"); surfxml_bufferliteral('\0', &bnext, "1.0"); - surfxml_bufferliteral('\0', &bnext, "-1.0"); - surfxml_bufferliteral('\0', &bnext, "0.0"); - surfxml_bufferliteral('\0', &bnext, "0.0"); - surfxml_bufferliteral('\0', &bnext, "0.0"); - surfxml_bufferliteral('\0', &bnext, "0.0"); + surfxml_bufferliteral('\0', &bnext, "1"); surfxml_bufferliteral('\0', &bnext, "0.0"); surfxml_bufferliteral('\0', &bnext, "-1.0"); surfxml_bufferliteral('\0', &bnext, "-1.0"); @@ -463,6 +479,9 @@ const char* *surfxml_statenames=NULL; surfxml_statenames[S_surfxml_platform_3] = "platform"; surfxml_statenames[S_surfxml_platform_4] = "platform"; surfxml_statenames[S_surfxml_platform_5] = "platform"; + surfxml_statenames[S_surfxml_platform_6] = "platform"; + surfxml_statenames[S_surfxml_platform_7] = "platform"; + surfxml_statenames[S_surfxml_platform_8] = "platform"; surfxml_statenames[E_surfxml_platform] = "platform"; surfxml_statenames[AL_surfxml_include] = NULL; surfxml_statenames[E_surfxml_include] = "include"; @@ -473,23 +492,33 @@ const char* *surfxml_statenames=NULL; surfxml_statenames[S_surfxml_random_1] = "random"; surfxml_statenames[S_surfxml_random_2] = "random"; surfxml_statenames[E_surfxml_random] = "random"; - surfxml_statenames[AL_surfxml_trace_c_connect] = NULL; - surfxml_statenames[E_surfxml_trace_c_connect] = "trace:connect"; - surfxml_statenames[AL_surfxml_set] = NULL; - surfxml_statenames[E_surfxml_set] = "set"; - surfxml_statenames[AL_surfxml_foreach] = NULL; - surfxml_statenames[S_surfxml_foreach] = "foreach"; - surfxml_statenames[S_surfxml_foreach_1] = "foreach"; - surfxml_statenames[E_surfxml_foreach] = "foreach"; + surfxml_statenames[AL_surfxml_trace_connect] = NULL; + surfxml_statenames[E_surfxml_trace_connect] = "trace_connect"; + surfxml_statenames[AL_surfxml_AS] = NULL; + surfxml_statenames[S_surfxml_AS] = "AS"; + surfxml_statenames[S_surfxml_AS_1] = "AS"; + surfxml_statenames[S_surfxml_AS_2] = "AS"; + surfxml_statenames[S_surfxml_AS_3] = "AS"; + surfxml_statenames[S_surfxml_AS_4] = "AS"; + surfxml_statenames[S_surfxml_AS_5] = "AS"; + surfxml_statenames[S_surfxml_AS_6] = "AS"; + surfxml_statenames[S_surfxml_AS_7] = "AS"; + surfxml_statenames[S_surfxml_AS_8] = "AS"; + surfxml_statenames[S_surfxml_AS_9] = "AS"; + surfxml_statenames[S_surfxml_AS_10] = "AS"; + surfxml_statenames[S_surfxml_AS_11] = "AS"; + surfxml_statenames[S_surfxml_AS_12] = "AS"; + surfxml_statenames[S_surfxml_AS_13] = "AS"; + surfxml_statenames[E_surfxml_AS] = "AS"; surfxml_statenames[AL_surfxml_host] = NULL; surfxml_statenames[S_surfxml_host] = "host"; surfxml_statenames[S_surfxml_host_1] = "host"; surfxml_statenames[S_surfxml_host_2] = "host"; surfxml_statenames[E_surfxml_host] = "host"; - surfxml_statenames[AL_surfxml_prop] = NULL; - surfxml_statenames[E_surfxml_prop] = "prop"; surfxml_statenames[AL_surfxml_cluster] = NULL; surfxml_statenames[E_surfxml_cluster] = "cluster"; + surfxml_statenames[AL_surfxml_peer] = NULL; + surfxml_statenames[E_surfxml_peer] = "peer"; surfxml_statenames[AL_surfxml_router] = NULL; surfxml_statenames[E_surfxml_router] = "router"; surfxml_statenames[AL_surfxml_link] = NULL; @@ -497,18 +526,23 @@ const char* *surfxml_statenames=NULL; surfxml_statenames[S_surfxml_link_1] = "link"; surfxml_statenames[S_surfxml_link_2] = "link"; surfxml_statenames[E_surfxml_link] = "link"; - surfxml_statenames[AL_surfxml_route_c_multi] = NULL; - surfxml_statenames[S_surfxml_route_c_multi] = "route:multi"; - surfxml_statenames[S_surfxml_route_c_multi_1] = "route:multi"; - surfxml_statenames[S_surfxml_route_c_multi_2] = "route:multi"; - surfxml_statenames[E_surfxml_route_c_multi] = "route:multi"; surfxml_statenames[AL_surfxml_route] = NULL; surfxml_statenames[S_surfxml_route] = "route"; surfxml_statenames[S_surfxml_route_1] = "route"; surfxml_statenames[S_surfxml_route_2] = "route"; surfxml_statenames[E_surfxml_route] = "route"; - surfxml_statenames[AL_surfxml_link_c_ctn] = NULL; - surfxml_statenames[E_surfxml_link_c_ctn] = "link:ctn"; + surfxml_statenames[AL_surfxml_ASroute] = NULL; + surfxml_statenames[S_surfxml_ASroute] = "ASroute"; + surfxml_statenames[S_surfxml_ASroute_1] = "ASroute"; + surfxml_statenames[S_surfxml_ASroute_2] = "ASroute"; + surfxml_statenames[E_surfxml_ASroute] = "ASroute"; + surfxml_statenames[AL_surfxml_link_ctn] = NULL; + surfxml_statenames[E_surfxml_link_ctn] = "link_ctn"; + surfxml_statenames[AL_surfxml_bypassRoute] = NULL; + surfxml_statenames[S_surfxml_bypassRoute] = "bypassRoute"; + surfxml_statenames[S_surfxml_bypassRoute_1] = "bypassRoute"; + surfxml_statenames[S_surfxml_bypassRoute_2] = "bypassRoute"; + surfxml_statenames[E_surfxml_bypassRoute] = "bypassRoute"; surfxml_statenames[AL_surfxml_process] = NULL; surfxml_statenames[S_surfxml_process] = "process"; surfxml_statenames[S_surfxml_process_1] = "process"; @@ -516,11 +550,18 @@ const char* *surfxml_statenames=NULL; surfxml_statenames[E_surfxml_process] = "process"; surfxml_statenames[AL_surfxml_argument] = NULL; surfxml_statenames[E_surfxml_argument] = "argument"; + surfxml_statenames[AL_surfxml_config] = NULL; + surfxml_statenames[S_surfxml_config] = "config"; + surfxml_statenames[S_surfxml_config_1] = "config"; + surfxml_statenames[S_surfxml_config_2] = "config"; + surfxml_statenames[E_surfxml_config] = "config"; + surfxml_statenames[AL_surfxml_prop] = NULL; + surfxml_statenames[E_surfxml_prop] = "prop"; } /* COMMENTS and PIs: handled uniformly for efficiency. */ -{ +{ " */ -" is not allowed here."); +" is not allowed here."); "" { LEAVE; STag_surfxml_platform();surfxml_pcdata_ix = 0; ENTER(S_surfxml_platform); } @@ -593,7 +626,7 @@ const char* *surfxml_statenames=NULL; <> FAIL("EOF in attribute list of `platform' element."); } -{ +{ "" { LEAVE; ETag_surfxml_platform(); @@ -607,9 +640,9 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -650,9 +685,9 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""" FAIL("Unexpected end-tag `%s': `' expected.",yytext); <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""" { if (!AX_surfxml_random_id) FAIL("Required attribute `id' not set for `random' element."); @@ -751,7 +808,7 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_random_std_deviation) FAIL("Required attribute `std_deviation' not set for `random' element."); LEAVE; STag_surfxml_random(); surfxml_pcdata_ix = 0; ETag_surfxml_random(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; + case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; } } . FAIL("Unexpected character `%c' in attribute list of random element.", yytext[0]); @@ -765,7 +822,7 @@ const char* *surfxml_statenames=NULL; ETag_surfxml_random(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; + case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -773,178 +830,135 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""{ - "kind"{Eq}"'AVAILABILITY'" | - "kind"{Eq}"\"AVAILABILITY\"" A_surfxml_trace_c_connect_kind = A_surfxml_trace_c_connect_kind_AVAILABILITY; +{ + "kind"{Eq}"'HOST_AVAIL'" | + "kind"{Eq}"\"HOST_AVAIL\"" A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_HOST_AVAIL; + "kind"{Eq}"'POWER'" | + "kind"{Eq}"\"POWER\"" A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_POWER; + "kind"{Eq}"'LINK_AVAIL'" | + "kind"{Eq}"\"LINK_AVAIL\"" A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LINK_AVAIL; "kind"{Eq}"'BANDWIDTH'" | - "kind"{Eq}"\"BANDWIDTH\"" A_surfxml_trace_c_connect_kind = A_surfxml_trace_c_connect_kind_BANDWIDTH; + "kind"{Eq}"\"BANDWIDTH\"" A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_BANDWIDTH; "kind"{Eq}"'LATENCY'" | - "kind"{Eq}"\"LATENCY\"" A_surfxml_trace_c_connect_kind = A_surfxml_trace_c_connect_kind_LATENCY; - "kind"{Eq}"'POWER'" | - "kind"{Eq}"\"POWER\"" A_surfxml_trace_c_connect_kind = A_surfxml_trace_c_connect_kind_POWER; + "kind"{Eq}"\"LATENCY\"" A_surfxml_trace_connect_kind = A_surfxml_trace_connect_kind_LATENCY; - "trace_id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_c_connect_trace_id); - "trace_id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_c_connect_trace_id); + "trace"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_connect_trace); + "trace"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_connect_trace); - "element"{Eq}"'HOST'" | - "element"{Eq}"\"HOST\"" A_surfxml_trace_c_connect_element = A_surfxml_trace_c_connect_element_HOST; - "element"{Eq}"'LINK'" | - "element"{Eq}"\"LINK\"" A_surfxml_trace_c_connect_element = A_surfxml_trace_c_connect_element_LINK; - - "connector_id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_c_connect_connector_id); - "connector_id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_c_connect_connector_id); + "element"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_trace_connect_element); + "element"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_trace_connect_element); ">" { - if (!AX_surfxml_trace_c_connect_trace_id) FAIL("Required attribute `trace_id' not set for `trace:connect' element."); - if (!AX_surfxml_trace_c_connect_connector_id) FAIL("Required attribute `connector_id' not set for `trace:connect' element."); - LEAVE; STag_surfxml_trace_c_connect();surfxml_pcdata_ix = 0; ENTER(E_surfxml_trace_c_connect); + if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); + if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element."); + LEAVE; STag_surfxml_trace_connect();surfxml_pcdata_ix = 0; ENTER(E_surfxml_trace_connect); } "/>" { - if (!AX_surfxml_trace_c_connect_trace_id) FAIL("Required attribute `trace_id' not set for `trace:connect' element."); - if (!AX_surfxml_trace_c_connect_connector_id) FAIL("Required attribute `connector_id' not set for `trace:connect' element."); - LEAVE; STag_surfxml_trace_c_connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace_c_connect(); popbuffer(); /* attribute */ + if (!AX_surfxml_trace_connect_trace) FAIL("Required attribute `trace' not set for `trace_connect' element."); + if (!AX_surfxml_trace_connect_element) FAIL("Required attribute `element' not set for `trace_connect' element."); + LEAVE; STag_surfxml_trace_connect(); surfxml_pcdata_ix = 0; ETag_surfxml_trace_connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; - case S_surfxml_platform_2: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_2: SET(S_surfxml_AS_3); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break; } } - . FAIL("Unexpected character `%c' in attribute list of trace:connect element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `trace:connect' element start tag.",yytext); - <> FAIL("EOF in attribute list of `trace:connect' element."); + . FAIL("Unexpected character `%c' in attribute list of trace_connect element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `trace_connect' element start tag.",yytext); + <> FAIL("EOF in attribute list of `trace_connect' element."); } -{ - "" { +{ + "" { LEAVE; - ETag_surfxml_trace_c_connect(); + ETag_surfxml_trace_connect(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform_3: case S_surfxml_platform: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; - case S_surfxml_platform_2: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_2: SET(S_surfxml_AS_3); break; + case S_surfxml_AS_1: case S_surfxml_AS_5: SET(S_surfxml_AS_6); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_13: SET(S_surfxml_AS_13); break; } } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""{ - "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_set_id); - "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_set_id); - - "prefix"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_set_prefix); - "prefix"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_set_prefix); +{ + "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_AS_id); + "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_AS_id); - "suffix"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_set_suffix); - "suffix"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_set_suffix); - - "radical"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_set_radical); - "radical"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_set_radical); + "routing"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_AS_routing); + "routing"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_AS_routing); ">" { - if (!AX_surfxml_set_id) FAIL("Required attribute `id' not set for `set' element."); - if (!AX_surfxml_set_prefix) FAIL("Required attribute `prefix' not set for `set' element."); - if (!AX_surfxml_set_suffix) FAIL("Required attribute `suffix' not set for `set' element."); - if (!AX_surfxml_set_radical) FAIL("Required attribute `radical' not set for `set' element."); - LEAVE; STag_surfxml_set();surfxml_pcdata_ix = 0; ENTER(E_surfxml_set); + if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element."); + if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element."); + LEAVE; STag_surfxml_AS();surfxml_pcdata_ix = 0; ENTER(S_surfxml_AS); } "/>" { - if (!AX_surfxml_set_id) FAIL("Required attribute `id' not set for `set' element."); - if (!AX_surfxml_set_prefix) FAIL("Required attribute `prefix' not set for `set' element."); - if (!AX_surfxml_set_suffix) FAIL("Required attribute `suffix' not set for `set' element."); - if (!AX_surfxml_set_radical) FAIL("Required attribute `radical' not set for `set' element."); - LEAVE; STag_surfxml_set(); surfxml_pcdata_ix = 0; ETag_surfxml_set(); popbuffer(); /* attribute */ + if (!AX_surfxml_AS_id) FAIL("Required attribute `id' not set for `AS' element."); + if (!AX_surfxml_AS_routing) FAIL("Required attribute `routing' not set for `AS' element."); + LEAVE; STag_surfxml_AS(); surfxml_pcdata_ix = 0; ETag_surfxml_AS(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; - } - } - . FAIL("Unexpected character `%c' in attribute list of set element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `set' element start tag.",yytext); - <> FAIL("EOF in attribute list of `set' element."); -} - -{ - "" { - LEAVE; - ETag_surfxml_set(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; - } - } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); -} - -" is not allowed here."); - -"{ - "set_id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_foreach_set_id); - "set_id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_foreach_set_id); - - ">" { - if (!AX_surfxml_foreach_set_id) FAIL("Required attribute `set_id' not set for `foreach' element."); - LEAVE; STag_surfxml_foreach();surfxml_pcdata_ix = 0; ENTER(S_surfxml_foreach); } - "/>" FAIL("`foreach' element cannot be empty."); - . FAIL("Unexpected character `%c' in attribute list of foreach element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `foreach' element start tag.",yytext); - <> FAIL("EOF in attribute list of `foreach' element."); + . FAIL("Unexpected character `%c' in attribute list of AS element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `AS' element start tag.",yytext); + <> FAIL("EOF in attribute list of `AS' element."); } -{ - "" { +{ + "" { LEAVE; - ETag_surfxml_foreach(); + ETag_surfxml_AS(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; } } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""" { if (!AX_surfxml_host_id) FAIL("Required attribute `id' not set for `host' element."); @@ -991,8 +999,7 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_host_power) FAIL("Required attribute `power' not set for `host' element."); LEAVE; STag_surfxml_host(); surfxml_pcdata_ix = 0; ETag_surfxml_host(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; - case S_surfxml_foreach: SET(S_surfxml_foreach_1); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; } } . FAIL("Unexpected character `%c' in attribute list of host element.", yytext[0]); @@ -1006,8 +1013,7 @@ const char* *surfxml_statenames=NULL; ETag_surfxml_host(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform_3: case S_surfxml_platform: SET(S_surfxml_platform_3); break; - case S_surfxml_foreach: SET(S_surfxml_foreach_1); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1015,71 +1021,23 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); - -"{ - "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_id); - "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_id); - - "value"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_value); - "value"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_value); - - ">" { - if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element."); - if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element."); - LEAVE; STag_surfxml_prop();surfxml_pcdata_ix = 0; ENTER(E_surfxml_prop); - } - "/>" { - if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element."); - if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element."); - LEAVE; STag_surfxml_prop(); surfxml_pcdata_ix = 0; ETag_surfxml_prop(); popbuffer(); /* attribute */ - switch (YY_START) { - case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break; - case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break; - case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; - case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; - } - } - . FAIL("Unexpected character `%c' in attribute list of prop element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `prop' element start tag.",yytext); - <> FAIL("EOF in attribute list of `prop' element."); -} - -{ - "" { - LEAVE; - ETag_surfxml_prop(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break; - case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break; - case S_surfxml_host: case S_surfxml_host_1: case S_surfxml_host_2: SET(S_surfxml_host_2); break; - case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; - } - } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); -} - -" is not allowed here."); +" is not allowed here."); -""" { if (!AX_surfxml_cluster_id) FAIL("Required attribute `id' not set for `cluster' element."); if (!AX_surfxml_cluster_prefix) FAIL("Required attribute `prefix' not set for `cluster' element."); @@ -1119,8 +1098,6 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element."); if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element."); if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element."); - if (!AX_surfxml_cluster_bb_bw) FAIL("Required attribute `bb_bw' not set for `cluster' element."); - if (!AX_surfxml_cluster_bb_lat) FAIL("Required attribute `bb_lat' not set for `cluster' element."); LEAVE; STag_surfxml_cluster();surfxml_pcdata_ix = 0; ENTER(E_surfxml_cluster); } "/>" { @@ -1131,11 +1108,10 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_cluster_power) FAIL("Required attribute `power' not set for `cluster' element."); if (!AX_surfxml_cluster_bw) FAIL("Required attribute `bw' not set for `cluster' element."); if (!AX_surfxml_cluster_lat) FAIL("Required attribute `lat' not set for `cluster' element."); - if (!AX_surfxml_cluster_bb_bw) FAIL("Required attribute `bb_bw' not set for `cluster' element."); - if (!AX_surfxml_cluster_bb_lat) FAIL("Required attribute `bb_lat' not set for `cluster' element."); LEAVE; STag_surfxml_cluster(); surfxml_pcdata_ix = 0; ETag_surfxml_cluster(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; } } . FAIL("Unexpected character `%c' in attribute list of cluster element.", yytext[0]); @@ -1149,7 +1125,8 @@ const char* *surfxml_statenames=NULL; ETag_surfxml_cluster(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1157,10 +1134,90 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); + +"{ + "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_id); + "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_id); + + "power"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_power); + "power"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_power); + + "bw_in"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_bw_in); + "bw_in"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_bw_in); + + "bw_out"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_bw_out); + "bw_out"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_bw_out); + + "lat"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_lat); + "lat"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_lat); + + "coordinates"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_coordinates); + "coordinates"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_coordinates); + + "availability_file"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_availability_file); + "availability_file"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_availability_file); + + "state_file"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_peer_state_file); + "state_file"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_peer_state_file); + + ">" { + if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element."); + if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element."); + if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element."); + if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element."); + if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element."); + LEAVE; STag_surfxml_peer();surfxml_pcdata_ix = 0; ENTER(E_surfxml_peer); + } + "/>" { + if (!AX_surfxml_peer_id) FAIL("Required attribute `id' not set for `peer' element."); + if (!AX_surfxml_peer_power) FAIL("Required attribute `power' not set for `peer' element."); + if (!AX_surfxml_peer_bw_in) FAIL("Required attribute `bw_in' not set for `peer' element."); + if (!AX_surfxml_peer_bw_out) FAIL("Required attribute `bw_out' not set for `peer' element."); + if (!AX_surfxml_peer_lat) FAIL("Required attribute `lat' not set for `peer' element."); + LEAVE; STag_surfxml_peer(); surfxml_pcdata_ix = 0; ETag_surfxml_peer(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + } + } + . FAIL("Unexpected character `%c' in attribute list of peer element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `peer' element start tag.",yytext); + <> FAIL("EOF in attribute list of `peer' element."); +} -"{ + "" { + LEAVE; + ETag_surfxml_peer(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_2: case S_surfxml_AS: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; + case S_surfxml_platform_6: case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_6); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + +" is not allowed here."); + +"" { if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element."); LEAVE; STag_surfxml_router();surfxml_pcdata_ix = 0; ENTER(E_surfxml_router); @@ -1176,7 +1236,7 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_router_id) FAIL("Required attribute `id' not set for `router' element."); LEAVE; STag_surfxml_router(); surfxml_pcdata_ix = 0; ETag_surfxml_router(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; } } . FAIL("Unexpected character `%c' in attribute list of router element.", yytext[0]); @@ -1190,7 +1250,7 @@ const char* *surfxml_statenames=NULL; ETag_surfxml_router(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1198,13 +1258,13 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); -""" { if (!AX_surfxml_link_id) FAIL("Required attribute `id' not set for `link' element."); @@ -1251,8 +1313,8 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_link_bandwidth) FAIL("Required attribute `bandwidth' not set for `link' element."); LEAVE; STag_surfxml_link(); surfxml_pcdata_ix = 0; ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_foreach: case S_surfxml_foreach_1: SET(E_surfxml_foreach); break; - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; } } . FAIL("Unexpected character `%c' in attribute list of link element.", yytext[0]); @@ -1260,14 +1322,14 @@ const char* *surfxml_statenames=NULL; <> FAIL("EOF in attribute list of `link' element."); } -{ +{ "" { LEAVE; ETag_surfxml_link(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_foreach: case S_surfxml_foreach_1: SET(E_surfxml_foreach); break; - case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + case S_surfxml_AS_11: case S_surfxml_AS_10: case S_surfxml_AS: SET(S_surfxml_AS_11); break; + case S_surfxml_AS_2: case S_surfxml_AS_3: SET(S_surfxml_AS_3); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1275,70 +1337,12 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); - -"{ - "src"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_route_c_multi_src); - "src"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_route_c_multi_src); - - "dst"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_route_c_multi_dst); - "dst"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_route_c_multi_dst); +" is not allowed here."); - "action"{Eq}"'POSTPEND'" | - "action"{Eq}"\"POSTPEND\"" A_surfxml_route_c_multi_action = A_surfxml_route_c_multi_action_POSTPEND; - "action"{Eq}"'PREPEND'" | - "action"{Eq}"\"PREPEND\"" A_surfxml_route_c_multi_action = A_surfxml_route_c_multi_action_PREPEND; - "action"{Eq}"'OVERRIDE'" | - "action"{Eq}"\"OVERRIDE\"" A_surfxml_route_c_multi_action = A_surfxml_route_c_multi_action_OVERRIDE; - - "symmetric"{Eq}"'YES'" | - "symmetric"{Eq}"\"YES\"" A_surfxml_route_c_multi_symmetric = A_surfxml_route_c_multi_symmetric_YES; - "symmetric"{Eq}"'NO'" | - "symmetric"{Eq}"\"NO\"" A_surfxml_route_c_multi_symmetric = A_surfxml_route_c_multi_symmetric_NO; - - ">" { - if (!AX_surfxml_route_c_multi_src) FAIL("Required attribute `src' not set for `route:multi' element."); - if (!AX_surfxml_route_c_multi_dst) FAIL("Required attribute `dst' not set for `route:multi' element."); - LEAVE; STag_surfxml_route_c_multi();surfxml_pcdata_ix = 0; ENTER(S_surfxml_route_c_multi); - } - "/>" FAIL("`route:multi' element cannot be empty."); - . FAIL("Unexpected character `%c' in attribute list of route:multi element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `route:multi' element start tag.",yytext); - <> FAIL("EOF in attribute list of `route:multi' element."); -} - -{ - "" { - LEAVE; - ETag_surfxml_route_c_multi(); - popbuffer(); /* attribute */ - switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; - } - } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); -} - -" is not allowed here."); - -""" { if (!AX_surfxml_route_src) FAIL("Required attribute `src' not set for `route' element."); @@ -1378,7 +1368,7 @@ const char* *surfxml_statenames=NULL; if (!AX_surfxml_route_dst) FAIL("Required attribute `dst' not set for `route' element."); LEAVE; STag_surfxml_route(); surfxml_pcdata_ix = 0; ETag_surfxml_route(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; + case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break; } } . FAIL("Unexpected character `%c' in attribute list of route element.", yytext[0]); @@ -1392,7 +1382,7 @@ const char* *surfxml_statenames=NULL; ETag_surfxml_route(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; + case S_surfxml_AS_12: case S_surfxml_AS_9: case S_surfxml_AS_11: case S_surfxml_AS_13: case S_surfxml_AS: SET(S_surfxml_AS_13); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1400,56 +1390,190 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); + +"{ + "src"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_src); + "src"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_src); + + "dst"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_dst); + "dst"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_dst); + + "gw_src"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_gw_src); + "gw_src"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_gw_src); + + "gw_dst"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_ASroute_gw_dst); + "gw_dst"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_ASroute_gw_dst); + + "symmetrical"{Eq}"'YES'" | + "symmetrical"{Eq}"\"YES\"" A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_YES; + "symmetrical"{Eq}"'NO'" | + "symmetrical"{Eq}"\"NO\"" A_surfxml_ASroute_symmetrical = A_surfxml_ASroute_symmetrical_NO; + + ">" { + if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); + LEAVE; STag_surfxml_ASroute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_ASroute); + } + "/>" { + if (!AX_surfxml_ASroute_src) FAIL("Required attribute `src' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_dst) FAIL("Required attribute `dst' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_src) FAIL("Required attribute `gw_src' not set for `ASroute' element."); + if (!AX_surfxml_ASroute_gw_dst) FAIL("Required attribute `gw_dst' not set for `ASroute' element."); + LEAVE; STag_surfxml_ASroute(); surfxml_pcdata_ix = 0; ETag_surfxml_ASroute(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + } + } + . FAIL("Unexpected character `%c' in attribute list of ASroute element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `ASroute' element start tag.",yytext); + <> FAIL("EOF in attribute list of `ASroute' element."); +} + +{ + "" { + LEAVE; + ETag_surfxml_ASroute(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_1: case S_surfxml_AS_5: case S_surfxml_AS: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_6); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + +" is not allowed here."); -""{ - "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_link_c_ctn_id); - "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_link_c_ctn_id); +{ + "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_link_ctn_id); + "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_link_ctn_id); + + "direction"{Eq}"'UP'" | + "direction"{Eq}"\"UP\"" A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_UP; + "direction"{Eq}"'DOWN'" | + "direction"{Eq}"\"DOWN\"" A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_DOWN; + "direction"{Eq}"'NONE'" | + "direction"{Eq}"\"NONE\"" A_surfxml_link_ctn_direction = A_surfxml_link_ctn_direction_NONE; ">" { - if (!AX_surfxml_link_c_ctn_id) FAIL("Required attribute `id' not set for `link:ctn' element."); - LEAVE; STag_surfxml_link_c_ctn();surfxml_pcdata_ix = 0; ENTER(E_surfxml_link_c_ctn); + if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element."); + LEAVE; STag_surfxml_link_ctn();surfxml_pcdata_ix = 0; ENTER(E_surfxml_link_ctn); } "/>" { - if (!AX_surfxml_link_c_ctn_id) FAIL("Required attribute `id' not set for `link:ctn' element."); - LEAVE; STag_surfxml_link_c_ctn(); surfxml_pcdata_ix = 0; ETag_surfxml_link_c_ctn(); popbuffer(); /* attribute */ + if (!AX_surfxml_link_ctn_id) FAIL("Required attribute `id' not set for `link_ctn' element."); + LEAVE; STag_surfxml_link_ctn(); surfxml_pcdata_ix = 0; ETag_surfxml_link_ctn(); popbuffer(); /* attribute */ switch (YY_START) { + case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break; case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break; - case S_surfxml_route_c_multi_2: case S_surfxml_route_c_multi_1: case S_surfxml_route_c_multi: SET(S_surfxml_route_c_multi_2); break; + case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break; } } - . FAIL("Unexpected character `%c' in attribute list of link:ctn element.", yytext[0]); - {Name} FAIL("Bad attribute `%s' in `link:ctn' element start tag.",yytext); - <> FAIL("EOF in attribute list of `link:ctn' element."); + . FAIL("Unexpected character `%c' in attribute list of link_ctn element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `link_ctn' element start tag.",yytext); + <> FAIL("EOF in attribute list of `link_ctn' element."); } -{ - "" { +{ + "" { LEAVE; - ETag_surfxml_link_c_ctn(); + ETag_surfxml_link_ctn(); popbuffer(); /* attribute */ switch (YY_START) { + case S_surfxml_bypassRoute: case S_surfxml_bypassRoute_2: case S_surfxml_bypassRoute_1: SET(S_surfxml_bypassRoute_2); break; case S_surfxml_route_1: case S_surfxml_route: case S_surfxml_route_2: SET(S_surfxml_route_2); break; - case S_surfxml_route_c_multi_2: case S_surfxml_route_c_multi_1: case S_surfxml_route_c_multi: SET(S_surfxml_route_c_multi_2); break; + case S_surfxml_ASroute: case S_surfxml_ASroute_1: case S_surfxml_ASroute_2: SET(S_surfxml_ASroute_2); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + +" is not allowed here."); + +"{ + "src"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_src); + "src"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_src); + + "dst"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_dst); + "dst"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_dst); + + "gw_src"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_gw_src); + "gw_src"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_gw_src); + + "gw_dst"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_bypassRoute_gw_dst); + "gw_dst"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_bypassRoute_gw_dst); + + ">" { + if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassRoute' element."); + LEAVE; STag_surfxml_bypassRoute();surfxml_pcdata_ix = 0; ENTER(S_surfxml_bypassRoute); + } + "/>" { + if (!AX_surfxml_bypassRoute_src) FAIL("Required attribute `src' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_dst) FAIL("Required attribute `dst' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_gw_src) FAIL("Required attribute `gw_src' not set for `bypassRoute' element."); + if (!AX_surfxml_bypassRoute_gw_dst) FAIL("Required attribute `gw_dst' not set for `bypassRoute' element."); + LEAVE; STag_surfxml_bypassRoute(); surfxml_pcdata_ix = 0; ETag_surfxml_bypassRoute(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break; } } - "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); - . FAIL("Unexpected character `%c': `' expected.",yytext[0]); - <> FAIL("Premature EOF: `' expected."); + . FAIL("Unexpected character `%c' in attribute list of bypassRoute element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `bypassRoute' element start tag.",yytext); + <> FAIL("EOF in attribute list of `bypassRoute' element."); } -" is not allowed here."); +{ + "" { + LEAVE; + ETag_surfxml_bypassRoute(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_AS_1: case S_surfxml_AS: case S_surfxml_AS_8: case S_surfxml_AS_4: case S_surfxml_AS_7: case S_surfxml_AS_6: case S_surfxml_AS_3: SET(S_surfxml_AS_8); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + +" is not allowed here."); -""> FAIL("EOF in attribute list of `process' element."); } -{ +{ "" { LEAVE; ETag_surfxml_process(); popbuffer(); /* attribute */ switch (YY_START) { - case S_surfxml_platform_5: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_3: case S_surfxml_platform_4: SET(S_surfxml_platform_5); break; + case S_surfxml_platform_6: case S_surfxml_platform_4: case S_surfxml_platform_1: case S_surfxml_platform: case S_surfxml_platform_8: case S_surfxml_platform_7: case S_surfxml_platform_3: SET(S_surfxml_platform_8); break; } } "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); @@ -1498,7 +1622,7 @@ const char* *surfxml_statenames=NULL; <> FAIL("Premature EOF: `' expected."); } -" is not allowed here."); +" is not allowed here."); "> FAIL("Premature EOF: `' expected."); } +" is not allowed here."); + +"{ + "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_config_id); + "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_config_id); + + ">" { + LEAVE; STag_surfxml_config();surfxml_pcdata_ix = 0; ENTER(S_surfxml_config); + } + "/>" { + LEAVE; STag_surfxml_config(); surfxml_pcdata_ix = 0; ETag_surfxml_config(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + } + } + . FAIL("Unexpected character `%c' in attribute list of config element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `config' element start tag.",yytext); + <> FAIL("EOF in attribute list of `config' element."); +} + +{ + "" { + LEAVE; + ETag_surfxml_config(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_platform_2: case S_surfxml_platform: case S_surfxml_platform_3: SET(S_surfxml_platform_3); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + + /* + * */ + +" is not allowed here."); + +"{ + "id"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_id); + "id"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_id); + + "value"{Eq}\' ENTER(VALUE1); BUFFERSET(AX_surfxml_prop_value); + "value"{Eq}\" ENTER(VALUE2); BUFFERSET(AX_surfxml_prop_value); + + ">" { + if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element."); + if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element."); + LEAVE; STag_surfxml_prop();surfxml_pcdata_ix = 0; ENTER(E_surfxml_prop); + } + "/>" { + if (!AX_surfxml_prop_id) FAIL("Required attribute `id' not set for `prop' element."); + if (!AX_surfxml_prop_value) FAIL("Required attribute `value' not set for `prop' element."); + LEAVE; STag_surfxml_prop(); surfxml_pcdata_ix = 0; ETag_surfxml_prop(); popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break; + case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break; + case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break; + case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; + case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; + } + } + . FAIL("Unexpected character `%c' in attribute list of prop element.", yytext[0]); + {Name} FAIL("Bad attribute `%s' in `prop' element start tag.",yytext); + <> FAIL("EOF in attribute list of `prop' element."); +} + +{ + "" { + LEAVE; + ETag_surfxml_prop(); + popbuffer(); /* attribute */ + switch (YY_START) { + case S_surfxml_random: case S_surfxml_random_2: case S_surfxml_random_1: SET(S_surfxml_random_2); break; + case S_surfxml_config_1: case S_surfxml_config: case S_surfxml_config_2: SET(S_surfxml_config_2); break; + case S_surfxml_process_1: case S_surfxml_process: case S_surfxml_process_2: SET(S_surfxml_process_2); break; + case S_surfxml_host_1: case S_surfxml_host_2: case S_surfxml_host: SET(S_surfxml_host_2); break; + case S_surfxml_link_1: case S_surfxml_link_2: case S_surfxml_link: SET(S_surfxml_link_2); break; + } + } + "" FAIL("Unexpected end-tag `%s': `' expected.",yytext); + . FAIL("Unexpected character `%c': `' expected.",yytext[0]); + <> FAIL("Premature EOF: `' expected."); +} + /* EPILOG: after the root element. */ {