lib/junoser/parser.rb in junoser-0.2.10 vs lib/junoser/parser.rb in junoser-0.2.11

- old
+ new

@@ -16021,11 +16021,11 @@ ).as(:oneline) ) ), b(str("voip"), c( - a(str("interface"), str("name") | str("access-ports"), + a(str("interface"), arg | str("access-ports"), c( a(str("vlan"), arg), a(str("forwarding-class"), arg) ) ) @@ -16240,11 +16240,11 @@ ) ) end rule(:analyzer_egress_interface_type) do - (str("name") | str("all")).as(:arg) + (arg | str("all")).as(:arg) end rule(:analyzer_ingress_type) do c( b(str("interface"), @@ -16255,11 +16255,11 @@ ) ) end rule(:analyzer_ingress_interface_type) do - (str("name") | str("all")).as(:arg) + (arg | str("all")).as(:arg) end rule(:analyzer_output_type) do c( a(str("interface"), arg), @@ -16322,10 +16322,13 @@ juniper_monitoring_options ), b(str("accounting"), juniper_packet_accounting_options ), + b(str("analyzer"), + smpl_analyzer_type + ), b(str("port-mirroring"), juniper_port_mirror_options ), b(str("load-balance"), c( @@ -22717,11 +22720,11 @@ a(str("hold-multiplier"), arg), a(str("ptopo-configuration-trap-interval"), arg), a(str("ptopo-configuration-maximum-hold-time"), arg), a(str("lldp-configuration-notification-interval"), arg), str("netbios-snooping"), - a(str("interface"), str("name") | str("all"), + a(str("interface"), arg | str("all"), c( c( str("disable") ) ) @@ -22732,11 +22735,11 @@ c( c( str("disable") ), a(str("fast-start"), arg), - a(str("interface"), str("name") | str("all"), + a(str("interface"), arg | str("all"), c( c( str("disable") ), b(str("location"), @@ -29468,11 +29471,12 @@ b(str("destination-networks"), network_type ) ) ), - str("gre") + str("gre"), + str("udp"), ), b(str("destination-networks"), network_type ) ) @@ -38270,9 +38274,170 @@ arg ) ), a(str("flag"), str("all") | str("client-server") | str("configuration") | str("interface") | str("rtsock")).as(:oneline) ) + ) + ) + end + + rule(:smpl_analyzer_type) do + b(arg.as(:arg), + c( + b(str("input"), + smpl_analyzer_input_type + ), + b(str("output"), + smpl_analyzer_output_type + ) + ) + ) + end + + rule(:smpl_analyzer_input_type) do + c( + a(str("rate"), arg), + a(str("maximum-packet-length"), arg), + b(str("ingress"), + smpl_analyzer_ingress_type + ), + b(str("egress"), + smpl_analyzer_egress_type + ) + ) + end + + rule(:smpl_analyzer_egress_type) do + c( + b(str("interface"), + analyzer_egress_interface_type + ), + b(str("routing-instance"), + analyzer_egress_routing_instance_type + ), + b(str("vlan"), + analyzer_egress_vlan_type + ), + b(str("bridge-domain"), + analyzer_egress_bridge_domain_type + ) + ) + end + + rule(:analyzer_egress_bridge_domain_type) do + arg.as(:arg) + end + + rule(:analyzer_egress_interface_type) do + (arg | str("all")).as(:arg) + end + + rule(:analyzer_egress_routing_instance_type) do + b(arg.as(:arg), + c( + b(str("vlan"), + analyzer_egress_vlan_type + ), + b(str("bridge-domain"), + analyzer_egress_bridge_domain_type + ) + ) + ) + end + + rule(:analyzer_egress_vlan_type) do + arg.as(:arg) + end + + rule(:smpl_analyzer_ingress_type) do + c( + b(str("interface"), + analyzer_ingress_interface_type + ), + b(str("routing-instance"), + analyzer_ingress_routing_instance_type + ), + b(str("vlan"), + analyzer_ingress_vlan_type + ), + b(str("bridge-domain"), + analyzer_ingress_bridge_domain_type + ) + ) + end + + rule(:analyzer_ingress_bridge_domain_type) do + arg.as(:arg) + end + + rule(:analyzer_ingress_interface_type) do + (arg | str("all")).as(:arg) + end + + rule(:analyzer_ingress_routing_instance_type) do + b(arg.as(:arg), + c( + b(str("vlan"), + analyzer_ingress_vlan_type + ), + b(str("bridge-domain"), + analyzer_ingress_bridge_domain_type + ) + ) + ) + end + + rule(:analyzer_ingress_vlan_type) do + arg.as(:arg) + end + + rule(:smpl_analyzer_output_type) do + c( + c( + b(str("interface"), + interface_name + ), + b(str("ip-address"), + ipv4addr + ), + a(str("next-hop-group"), arg), + b(str("routing-instance"), + output_routing_instance_type + ), + b(str("vlan"), + pm_rspan_vlan + ), + b(str("bridge-domain"), + pm_rspan_bridge_domain + ) + ) + ) + end + + rule(:output_routing_instance_type) do + b(arg.as(:arg), + c( + b(str("ip-address"), + ipv4addr + ), + b(str("vlan"), + pm_rspan_vlan + ), + b(str("bridge-domain"), + pm_rspan_bridge_domain + ) + ) + ) + end + + rule(:pm_rspan_bridge_domain) do + arg.as(:arg) + end + + rule(:pm_rspan_vlan) do + b(arg.as(:arg), + c( + str("no-tag") ) ) end end end